android10 / android10/Android-CleanArchitecture
NullPointerException on UserListFragment is being recreated with Don't keep Activities
- Lingua principale
- Java
- Stelle
- 15.5k
- Fork
- 3.3k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Scenario:
- set "Don't keep Activities" in Developer Options
- start Android-CleanArchitecture application
- go to Users List
- pick first entry, "Simon Hill" is presented
- press recent apps button
- go back to Android-CleanArchitecture application
- NPE
> 05-09 16:26:44.956 24604-24604/com.fernanependocejas.android10.sample.presentation E/AndroidRuntime: FATAL EXCEPTION: main
> Process: com.fernanependocejas.android10.sample.presentation, PID: 24604
> java.lang.RuntimeException: Unable to start activity ComponentInfo{com.fernanependocejas.android10.sample.presentation/com.fernandocejas.android10.sample.presentation.view.activity.UserDetailsActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'void com.fernandocejas.android10.sample.presentation.internal.di.components.UserComponent.inject(com.fernandocejas.android10.sample.presentation.view.fragment.UserDetailsFragment)' on a null object reference
> at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2484)
> at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2544)
> at android.app.ActivityThread.access$900(ActivityThread.java:150)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:168)
> at android.app.ActivityThread.main(ActivityThread.java:5845)
> at java.lang.reflect.Method.invoke(Native Method)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
> Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'void com.fernandocejas.android10.sample.presentation.internal.di.components.UserComponent.inject(com.fernandocejas.android10.sample.presentation.view.fragment.UserDetailsFragment)' on a null object reference
> at com.fernandocejas.android10.sample.presentation.view.fragment.UserDetailsFragment.onCreate(UserDetailsFragment.java:48)
> at android.app.Fragment.performCreate(Fragment.java:2198)
> at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:942)
> at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1148)
> at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1130)
> at android.app.FragmentManagerImpl.dispatchCreate(FragmentManager.java:1948)
> at android.app.FragmentController.dispatchCreate(FragmentController.java:141)
> at android.app.Activity.onCreate(Activity.java:924)
> at com.fernandocejas.android10.sample.presentation.view.activity.BaseActivity.onCreate(BaseActivity.java:22)
> at com.fernandocejas.android10.sample.presentation.view.activity.UserDetailsActivity.onCreate(UserDetailsActivity.java:37)
> at android.app.Activity.performCreate(Activity.java:6248)
> at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1125)
> at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2437)
> at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2544)
> at android.app.ActivityThread.access$900(ActivityThread.java:150)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:168)
> at android.app.ActivityThread.main(ActivityThread.java:5845)
> at java.lang.reflect.Method.invoke(Native Method)
> at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
This may be related to #92.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Riproduci lo scenario «Don't keep Activities», quindi parti da UserDetailsFragment.java:48 e analizza UserDetailsActivity.onCreate e BaseActivity.onCreate. Traccia il ripristino di UserComponent prima dell'iniezione; il lavoro è completato quando il ritorno dalle app recenti non genera più la NullPointerException segnalata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- android, java
- Ambito
- mobile
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100