我已经在单独的android项目及其工作之前构建了此映射应用程序。当我尝试与另一个系统集成时,会出现问题,我复制了与先前项目映射系统相同的所有代码。问题是我的“ savedInstanceState”上没有null,我该如何解决?
这是我在手机android 9上运行的新项目的映射系统。我希望在集成所有项目之前先与项目A(“ ..”)和项目B(“映射系统”)集成。
-error message- on mapView.onCreate(savedInstanceState);
private MapView mapView;
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method
'void com.mapbox.mapboxsdk.maps.MapView.onCreate(android.os.Bundle)'
on a null object reference
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Mapbox.getInstance(this, "......");
setContentView(R.layout.activity_main);
mapView = findViewById(R.id.mapView);
mapView.onCreate(savedInstanceState);
mapView.getMapAsync(this);
}
@Override
public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {
super.onSaveInstanceState(outState, outPersistentState);
mapView.onSaveInstanceState(outState);
}
预期结果: 地图显示
实际结果: 该应用程序崩溃是因为我的“ mapView.onCreate(savedInstanceState);”上没有空值
答案 0 :(得分:0)
List<Employee>
为null,当活动首次开始时。
最安全的调用方法是在任何地方使用它之前,请确保它不为null。
savedInstanceState