Appolica / InteractiveInfoWindowAndroid

Library project, developed and maintained by Appolica, offering an interactive info window for Google maps on Android.
249 stars 56 forks source link

NullPointerException in MapInfoWindowFragment.onSaveInstanceState() #50

Open andreymarkosov opened 3 years ago

andreymarkosov commented 3 years ago

Hi. I observed a crash in onSaveInstanceState() in the play console. I could reproduce this NPE using "don't keep activities" flag:

  1. I opened the app
  2. Open the screen with the map
  3. Clicked on a marker to see the InfoWindow
  4. Pressed phone's 'home' button
  5. Got this crash
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.appolica.interactiveinfowindow.InfoWindowManager.onSaveInstanceState(android.os.Bundle)' on a null object reference
        at com.appolica.interactiveinfowindow.fragment.MapInfoWindowFragment.onSaveInstanceState(MapInfoWindowFragment.java:102)
        at androidx.fragment.app.Fragment.performSaveInstanceState(Fragment.java:2864)
        at androidx.fragment.app.FragmentStateManager.saveBasicState(FragmentStateManager.java:434)
        at androidx.fragment.app.FragmentStateManager.saveState(FragmentStateManager.java:400)
        at androidx.fragment.app.FragmentStore.saveActiveFragments(FragmentStore.java:143)
        at androidx.fragment.app.FragmentManager.saveAllState(FragmentManager.java:2398)
        at androidx.fragment.app.Fragment.performSaveInstanceState(Fragment.java:2866)
        at androidx.fragment.app.FragmentStateManager.saveBasicState(FragmentStateManager.java:434)
        at androidx.fragment.app.FragmentStateManager.saveState(FragmentStateManager.java:400)
        at androidx.fragment.app.FragmentStore.saveActiveFragments(FragmentStore.java:143)
        at androidx.fragment.app.FragmentManager.saveAllState(FragmentManager.java:2398)
        at androidx.fragment.app.Fragment.performSaveInstanceState(Fragment.java:2866)
        at androidx.fragment.app.FragmentStateManager.saveBasicState(FragmentStateManager.java:434)
        at androidx.fragment.app.FragmentStateManager.saveState(FragmentStateManager.java:400)
        at androidx.fragment.app.FragmentStore.saveActiveFragments(FragmentStore.java:143)
        at androidx.fragment.app.FragmentManager.saveAllState(FragmentManager.java:2398)
        at androidx.fragment.app.FragmentController.saveAllState(FragmentController.java:152)
        at androidx.fragment.app.FragmentActivity.onSaveInstanceState(FragmentActivity.java:512)
        at androidx.appcompat.app.AppCompatActivity.onSaveInstanceState(AppCompatActivity.java:544)
        at android.app.Activity.performSaveInstanceState(Activity.java:1549)
        at android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1443)
        at android.app.ActivityThread.callActivityOnSaveInstanceState(ActivityThread.java:4809)
        at android.app.ActivityThread.callActivityOnStop(ActivityThread.java:4157)
        at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:4121)
        at android.app.ActivityThread.handleStopActivity(ActivityThread.java:4196)
        at android.app.servertransaction.StopActivityItem.execute(StopActivityItem.java:41)
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
dpetrov-appolica commented 3 years ago

Sorry, but I can't reproduce it even with Don't keep activities flag. If you think of anything else that might help, share.