[ 
https://issues.apache.org/jira/browse/CB-12277?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16339540#comment-16339540
 ] 

ASF GitHub Bot commented on CB-12277:
-------------------------------------

russaa opened a new pull request #149: CB-12277: (android) avoid 
NullPointerException  when removing splash-screen
URL: https://github.com/apache/cordova-plugin-splashscreen/pull/149
 
 
   
   <!--
   Please make sure the checklist boxes are all checked before submitting the 
PR. The checklist
   is intended as a quick reference, for complete details please see our 
Contributor Guidelines:
   
   http://cordova.apache.org/contribute/contribute_guidelines.html
   
   Thanks!
   -->
   
   ### Platforms affected
   android
   
   ### What does this PR do?
   
   Avoids NullPointerException when removing splash-screen.
   
   As described in the issue 
[CB-12277](https://issues.apache.org/jira/browse/CB-12277), this problem does 
not occur determinstically, but only sometimes.
   
   ### What testing has been done on this change?
   
   manual testing as described in comments of issue 
[CB-12277](https://issues.apache.org/jira/browse/CB-12277), as there is no 
interface in the test-harness yet for automatically restarting apps.
   
   the manual procedure was as follows:
    * start app, wait for splash-screen to disappear, restart app immediately
    * without patch, the NullPointerException always occurred within 5 repeats 
of this procedure
    * with patch, the NullPointerExeption did not occur within 20 repeats
   
   ### Checklist
   - [x] [Reported an issue](http://cordova.apache.org/contribute/issues.html) 
in the JIRA database
   - [x] Commit message follows the format: "CB-3232: (android) Fix bug with 
resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform 
affected.
   - ~~[ ] Added automated test coverage as appropriate for this change.~~
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


> Android, "SplashShowOnlyFirstTime"=true, crashes the app after re-opening it
> ----------------------------------------------------------------------------
>
>                 Key: CB-12277
>                 URL: https://issues.apache.org/jira/browse/CB-12277
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Ionic
>    Affects Versions: 4.0.1
>         Environment: Windows 7 x64, engine Android 6, ionic CLI 2.1.17, ionic 
> 2 RC4
>            Reporter: Musa Haidari
>            Priority: Major
>              Labels: android, cannot-reproduce, triaged
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> 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)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to