Skip to content

MainActivity cannot be recreated #3458

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
macgills opened this issue Mar 3, 2020 · 4 comments
Closed

MainActivity cannot be recreated #3458

macgills opened this issue Mar 3, 2020 · 4 comments

Comments

@macgills
Copy link
Contributor

macgills commented Mar 3, 2020

Summary:

When you have "Do not keep activities" active and try navigating back to MainActivity the app will crash.

Steps to reproduce:

  1. Turn on "Do not keep activities" in Developer Options
  2. Go to MainActivity
  3. Go to Device's Home Screen
  4. Return to the app using Recents

System logs:

2020-03-03 13:14:58.581 26031-26031/fr.free.nrw.commons.beta E/AndroidRuntime: FATAL EXCEPTION: main
    Process: fr.free.nrw.commons.beta, PID: 26031
    java.lang.RuntimeException: Unable to start activity ComponentInfo{fr.free.nrw.commons.beta/fr.free.nrw.commons.contributions.MainActivity}: java.lang.RuntimeException: Parcel android.os.Parcel@b329c81: Unmarshalling unknown type code 2131296411 at offset 13076
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6494)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
     Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@b329c81: Unmarshalling unknown type code 2131296411 at offset 13076
        at android.os.Parcel.readValue(Parcel.java:2833)
        at android.os.Parcel.readSparseArrayInternal(Parcel.java:3204)
        at android.os.Parcel.readSparseArray(Parcel.java:2416)
        at android.os.Parcel.readValue(Parcel.java:2811)
        at android.os.Parcel.readArrayMapInternal(Parcel.java:3123)
        at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:273)
        at android.os.BaseBundle.unparcel(BaseBundle.java:226)
        at android.os.Bundle.getSparseParcelableArray(Bundle.java:1009)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:773)
        at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1229)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1295)
        at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManagerImpl.java:2605)
        at androidx.fragment.app.FragmentManagerImpl.dispatchCreate(FragmentManagerImpl.java:2559)
        at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:234)
        at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:304)
        at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:85)
        at fr.free.nrw.commons.di.CommonsDaggerAppCompatActivity.onCreate(CommonsDaggerAppCompatActivity.java:24)
        at fr.free.nrw.commons.theme.BaseActivity.onCreate(BaseActivity.java:23)
        at fr.free.nrw.commons.contributions.MainActivity.onCreate(MainActivity.java:83)
        at android.app.Activity.performCreate(Activity.java:7009)
        at android.app.Activity.performCreate(Activity.java:7000)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2731)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6494) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
2020-03-03 13:14:58.584 26031-26031/fr.free.nrw.commons.beta E/ACRA: ACRA caught a RuntimeException for fr.free.nrw.commons.beta
    java.lang.RuntimeException: Unable to start activity ComponentInfo{fr.free.nrw.commons.beta/fr.free.nrw.commons.contributions.MainActivity}: java.lang.RuntimeException: Parcel android.os.Parcel@b329c81: Unmarshalling unknown type code 2131296411 at offset 13076
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6494)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
     Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@b329c81: Unmarshalling unknown type code 2131296411 at offset 13076
        at android.os.Parcel.readValue(Parcel.java:2833)
        at android.os.Parcel.readSparseArrayInternal(Parcel.java:3204)
        at android.os.Parcel.readSparseArray(Parcel.java:2416)
        at android.os.Parcel.readValue(Parcel.java:2811)
        at android.os.Parcel.readArrayMapInternal(Parcel.java:3123)
        at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:273)
        at android.os.BaseBundle.unparcel(BaseBundle.java:226)
        at android.os.Bundle.getSparseParcelableArray(Bundle.java:1009)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:773)
        at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1229)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1295)
        at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManagerImpl.java:2605)
        at androidx.fragment.app.FragmentManagerImpl.dispatchCreate(FragmentManagerImpl.java:2559)
        at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:234)
        at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:304)
        at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:85)
        at fr.free.nrw.commons.di.CommonsDaggerAppCompatActivity.onCreate(CommonsDaggerAppCompatActivity.java:24)
        at fr.free.nrw.commons.theme.BaseActivity.onCreate(BaseActivity.java:23)
        at fr.free.nrw.commons.contributions.MainActivity.onCreate(MainActivity.java:83)
        at android.app.Activity.performCreate(Activity.java:7009)
        at android.app.Activity.performCreate(Activity.java:7000)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2731)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6494) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
2020-03-03 13:14:58.802 26892-26902/? E/zygote64: Failed sending reply to debugger: Broken pipe

Commons app version:

master and betaDebug

Would you like to work on the issue?

Sure

@nicolas-raoul
Copy link
Member

Great finding!
I just added a section to the wiki about this technique.

@prince-09
Copy link

can i work on this?

@macgills
Copy link
Contributor Author

macgills commented Mar 9, 2020

Sure I amn't working on this right now.

@macgills
Copy link
Contributor Author

macgills commented May 7, 2020

fixed by #3686

@macgills macgills closed this as completed May 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants