Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-12277

Android, "SplashShowOnlyFirstTime"=true, crashes the app after re-opening it

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.0.1
    • None
    • Ionic
    • Windows 7 x64, engine Android 6, ionic CLI 2.1.17, ionic 2 RC4

    Description

      The app shows the splash screen on start. I want to close it programatically using this.platform.exitApp(); and after opening it again, I want the splash screen to apear again. The default behavoiur is to show the splash screen for the first run only, and if we close it the way mentioned, the subsequent openings will not show the splash screen.

      To override that I used <preference name="SplashShowOnlyFirstTime" value="false" />. Using this, the app shows splash screen for the first time and when close the app as mentioned, and try opening it again, while it is still available in recent apps, the app crashes most of the times reporting this in ADB:

      12-20 09:35:50.851 30375 30375 E AndroidRuntime: FATAL EXCEPTION: main
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: Process: com.mydomain.myapp, PID: 30375
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ImageView.setAnimation(android.view.animation.Animation)' on a null object reference
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at org.apache.cordova.splashscreen.SplashScreen$4.run(SplashScreen.java:227)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at android.app.Activity.runOnUiThread(Activity.java:6050)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at org.apache.cordova.splashscreen.SplashScreen.removeSplashScreen(SplashScreen.java:217)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at org.apache.cordova.splashscreen.SplashScreen.access$1000(SplashScreen.java:49)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at org.apache.cordova.splashscreen.SplashScreen$5$1.run(SplashScreen.java:330)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:739)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:95)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at android.os.Looper.loop(Looper.java:148)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7325)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
      12-20 09:35:50.851 30375 30375 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              musahaidari Musa Haidari
              Votes:
              2 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 2h
                  2h
                  Remaining:
                  Remaining Estimate - 2h
                  2h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified