NullPointerException:尝试调用虚方法'void com.google.android.gms.maps.MapFragment.getMapAsync
NullPointerException : Attempt to invoke virtual method 'void com.google.android.gms.maps.MapFragment.getMapAsync
我正在使用 com.google.android.gms:play-services-maps:11.0.2
版本的 Google 地图服务。尝试调用以下内容时,出现以下错误:
java.lang.NullPointerException: Attempt to invoke virtual method
void
com.google.android.gms.maps.MapFragment.getMapAsync(com.google.android.gms.maps.OnMapReadyCallback)' 在空对象引用上
下面是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
看起来您使用的是 SupportMapFragment
而不是 MapFragment
。
更改此行:
mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
为此:
mapFragment = (MapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
我正在使用 com.google.android.gms:play-services-maps:11.0.2
版本的 Google 地图服务。尝试调用以下内容时,出现以下错误:
java.lang.NullPointerException: Attempt to invoke virtual method
void
com.google.android.gms.maps.MapFragment.getMapAsync(com.google.android.gms.maps.OnMapReadyCallback)' 在空对象引用上
下面是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
看起来您使用的是 SupportMapFragment
而不是 MapFragment
。
更改此行:
mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.map);
为此:
mapFragment = (MapFragment) getSupportFragmentManager().findFragmentById(R.id.map);