Java 如何修复我的savedInstanceState上的NullPointerException及其发生原因

Java 如何修复我的savedInstanceState上的NullPointerException及其发生原因,java,android,mapbox,Java,Android,Mapbox,我已经构建了这个映射应用程序,之前是在单独的android项目及其工作上。当我尝试与另一个系统集成时,问题就出现了,我复制了所有代码,就像之前的项目是映射系统一样。问题是我的“savedInstanceState”上存在空值,我如何无法修复它 这是我的新项目地图系统,运行在手机安卓9上。我想在集成之前集成项目A(“…”)和项目B(“映射系统”),所有这些都是完全可行的 -error message- on mapView.onCreate(savedInstanceState); priv

我已经构建了这个映射应用程序,之前是在单独的android项目及其工作上。当我尝试与另一个系统集成时,问题就出现了,我复制了所有代码,就像之前的项目是映射系统一样。问题是我的“savedInstanceState”上存在空值,我如何无法修复它

这是我的新项目地图系统,运行在手机安卓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);”上的值为空

调用它最安全的方法是在任何地方使用它之前确保它不为null

if(savedInstanceState != null) {
   mapView.onCreate(savedInstanceState);
}

它是空的,但我仍然想使用它,那么如何解决这个问题呢?我还是不清楚在我给你的代码中,你会使用它。另一种选择是使用
onRestoreInstanceState()
设置保存的实例