Obsolete
Status Update
Comments
sd...@gmail.com <sd...@gmail.com> #2
First of all, sorry for my poor english.
I really agree.
My app crashes only in cetain phone even if the build number is same!
09-23 11:05:53.718: E 754 Parcel Class not found when unmarshalling: com.samilcts.mpaio.data.Receipt
09-23 11:05:53.718: E 754 Parcel java.lang.ClassNotFoundException: com.samilcts.mpaio.data.Receipt
09-23 11:05:53.718: E 754 Parcel at java.lang.Class.classForName(Native Method)
09-23 11:05:53.718: E 754 Parcel at java.lang.Class.forName(Class.java:251)
09-23 11:05:53.718: E 754 Parcel at java.lang.Class.forName(Class.java:216)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readParcelableCreator(Parcel.java:2133)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readParcelable(Parcel.java:2097)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readValue(Parcel.java:2013)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readArrayMapInternal(Parcel.java:2314)
09-23 11:05:53.718: E 754 Parcel at android.os.Bundle.unparcel(Bundle.java:249)
09-23 11:05:53.718: E 754 Parcel at android.os.Bundle.getString(Bundle.java:1118)
09-23 11:05:53.718: E 754 Parcel at android.content.Intent.getStringExtra(Intent.java:4991)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityStackSupervisor.startActivityLocked(ActivityStackSupervisor.java:1394)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityStackSupervisor.startActivityMayWait(ActivityStackSupervisor.java:1026)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:3984)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:3887)
09-23 11:05:53.718: E 754 Parcel at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:159)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2576)
09-23 11:05:53.718: E 754 Parcel at android.os.Binder.execTransact(Binder.java:404)
09-23 11:05:53.718: E 754 Parcel at dalvik.system.NativeStart.run(Native Method)
09-23 11:05:53.718: E 754 Parcel Caused by: java.lang.NoClassDefFoundError: com/samilcts/mpaio/data/Receipt
09-23 11:05:53.718: E 754 Parcel ... 18 more
09-23 11:05:53.718: E 754 Parcel Caused by: java.lang.ClassNotFoundException: Didn't find class "com.samilcts.mpaio.data.Receipt" on path: DexPathList[[directory "."],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
09-23 11:05:53.718: E 754 Parcel at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67)
09-23 11:05:53.718: E 754 Parcel at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
09-23 11:05:53.718: E 754 Parcel at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
09-23 11:05:53.718: E 754 Parcel ... 18 more
I really agree.
My app crashes only in cetain phone even if the build number is same!
09-23 11:05:53.718: E 754 Parcel Class not found when unmarshalling: com.samilcts.mpaio.data.Receipt
09-23 11:05:53.718: E 754 Parcel java.lang.ClassNotFoundException: com.samilcts.mpaio.data.Receipt
09-23 11:05:53.718: E 754 Parcel at java.lang.Class.classForName(Native Method)
09-23 11:05:53.718: E 754 Parcel at java.lang.Class.forName(Class.java:251)
09-23 11:05:53.718: E 754 Parcel at java.lang.Class.forName(Class.java:216)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readParcelableCreator(Parcel.java:2133)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readParcelable(Parcel.java:2097)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readValue(Parcel.java:2013)
09-23 11:05:53.718: E 754 Parcel at android.os.Parcel.readArrayMapInternal(Parcel.java:2314)
09-23 11:05:53.718: E 754 Parcel at android.os.Bundle.unparcel(Bundle.java:249)
09-23 11:05:53.718: E 754 Parcel at android.os.Bundle.getString(Bundle.java:1118)
09-23 11:05:53.718: E 754 Parcel at android.content.Intent.getStringExtra(Intent.java:4991)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityStackSupervisor.startActivityLocked(ActivityStackSupervisor.java:1394)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityStackSupervisor.startActivityMayWait(ActivityStackSupervisor.java:1026)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:3984)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:3887)
09-23 11:05:53.718: E 754 Parcel at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:159)
09-23 11:05:53.718: E 754 Parcel at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2576)
09-23 11:05:53.718: E 754 Parcel at android.os.Binder.execTransact(Binder.java:404)
09-23 11:05:53.718: E 754 Parcel at dalvik.system.NativeStart.run(Native Method)
09-23 11:05:53.718: E 754 Parcel Caused by: java.lang.NoClassDefFoundError: com/samilcts/mpaio/data/Receipt
09-23 11:05:53.718: E 754 Parcel ... 18 more
09-23 11:05:53.718: E 754 Parcel Caused by: java.lang.ClassNotFoundException: Didn't find class "com.samilcts.mpaio.data.Receipt" on path: DexPathList[[directory "."],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
09-23 11:05:53.718: E 754 Parcel at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67)
09-23 11:05:53.718: E 754 Parcel at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
09-23 11:05:53.718: E 754 Parcel at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
09-23 11:05:53.718: E 754 Parcel ... 18 more
ri...@gmail.com <ri...@gmail.com> #3
I also see the same few reports (usually after an update) and users sometimes complain with bad reviews about it too.
java.lang.RuntimeException: Unable to instantiate applicationcom.mindmeapp.alarmpad.App : java.lang.ClassNotFoundException: Didn't find class "com.mindmeapp.alarmpad.App " on path: DexPathList[[],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:507)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4301)
at android.app.ActivityThread.access$1500(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5001)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.mindmeapp.alarmpad.App " on path: DexPathList[[],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
at android.app.Instrumentation.newApplication(Instrumentation.java:975)
at android.app.LoadedApk.makeApplication(LoadedApk.java:502)
... 11 more
java.lang.RuntimeException: Unable to instantiate application
at android.app.LoadedApk.makeApplication(LoadedApk.java:507)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4301)
at android.app.ActivityThread.access$1500(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5001)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
at android.app.Instrumentation.newApplication(Instrumentation.java:975)
at android.app.LoadedApk.makeApplication(LoadedApk.java:502)
... 11 more
km...@gmail.com <km...@gmail.com> #4
An "operating system" that can't handle properly installing apps?
Hope it's not that, but rather crazy green aliens from outer space... :)
Hope it's not that, but rather crazy green aliens from outer space... :)
sd...@gmail.com <sd...@gmail.com> #5
It happens when the other sisutation.( not only "Google Play" problem)
In my case, this issue came out when it pass the custom parcelable array between the activities.
I have two phone that same android version(4.4.2).
And testing my app,
it is occurred at the one. but it does not occurred at the other phone.
In my case, this issue came out when it pass the custom parcelable array between the activities.
I have two phone that same android version(4.4.2).
And testing my app,
it is occurred at the one. but it does not occurred at the other phone.
km...@gmail.com <km...@gmail.com> #6
Wait, using a custom parcelable and not being able to unparcel it (e.g. when restoring a fragment) gives the parcelable class name in the call stack, and mostly happens on 2.* device (Android 4.* sets the class loader on bundles).
So it looks like a different issue.
So it looks like a different issue.
aa...@gmail.com <aa...@gmail.com> #7
I have a very similar issue. The class specificaaly Click extends application in this case. Runs fine from eclipse in VM or on multiple devices but crashes with this error 100% of the time when downloaded from playstore.
java.lang.RuntimeException: Unable to instantiate application com.ClickApp.click.ClickApp: java.lang.ClassNotFoundException: Didn't find class "com.ClickApp.click.ClickApp" on path: DexPathList[[zip file "/data/app/com.ClickApp.click-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.ClickApp.click-1, /vendor/lib, /system/lib]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:524)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4701)
at android.app.ActivityThread.access$1600(ActivityThread.java:148)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1379)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5473)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:854)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:670)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.ClickApp.click.ClickApp" on path: DexPathList[[zip file "/data/app/com.ClickApp.click-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.ClickApp.click-1, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newApplication(Instrumentation.java:975)
at android.app.LoadedApk.makeApplication(LoadedApk.java:519)
... 11 more
java.lang.RuntimeException: Unable to instantiate application com.ClickApp.click.ClickApp: java.lang.ClassNotFoundException: Didn't find class "com.ClickApp.click.ClickApp" on path: DexPathList[[zip file "/data/app/com.ClickApp.click-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.ClickApp.click-1, /vendor/lib, /system/lib]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:524)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4701)
at android.app.ActivityThread.access$1600(ActivityThread.java:148)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1379)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5473)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:854)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:670)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.ClickApp.click.ClickApp" on path: DexPathList[[zip file "/data/app/com.ClickApp.click-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.ClickApp.click-1, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newApplication(Instrumentation.java:975)
at android.app.LoadedApk.makeApplication(LoadedApk.java:519)
... 11 more
km...@gmail.com <km...@gmail.com> #8
Just got this on a Nexus 5 with 5.0.1 (LRX22C).
First time I'm seeing this myself, during development, as opposed to user reports from Google Play.
The class is there, has been for years and years. Just re-starting the app from its launcher icon (without a reinstall) worked fine, no exception this time.
How in the world can an "operating system" lose track of some of application components?
How in the world can a bug like this go unfixed for so long?
I really hope this report isn't ignored for a couple of years and then marked "obsolete" when Android 6.0 is released.
Please.
The output of "adb bugreport" is attached.
---
01-10 02:06:55.721 E/AndroidRuntime(21610): FATAL EXCEPTION: main
01-10 02:06:55.721 E/AndroidRuntime(21610): Process: org.kman.AquaMail, PID: 21610
01-10 02:06:55.721 E/AndroidRuntime(21610): java.lang.RuntimeException: Unable to instantiate application org.kman.AquaMail.core.AquaMailApplication: java.lang.ClassNotFoundException: Didn't find class "org.kman.AquaMail.core.AquaMailApplication" on path: DexPathList[[],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.LoadedApk.makeApplication(LoadedApk.java:563)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4491)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread.access$1500(ActivityThread.java:144)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1339)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.os.Handler.dispatchMessage(Handler.java:102)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.os.Looper.loop(Looper.java:135)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread.main(ActivityThread.java:5221)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.reflect.Method.invoke(Native Method)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.reflect.Method.invoke(Method.java:372)
01-10 02:06:55.721 E/AndroidRuntime(21610): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
01-10 02:06:55.721 E/AndroidRuntime(21610): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
01-10 02:06:55.721 E/AndroidRuntime(21610): Caused by: java.lang.ClassNotFoundException: Didn't find class "org.kman.AquaMail.core.AquaMailApplication" on path: DexPathList[[],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-10 02:06:55.721 E/AndroidRuntime(21610): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.Instrumentation.newApplication(Instrumentation.java:979)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.LoadedApk.makeApplication(LoadedApk.java:558)
01-10 02:06:55.721 E/AndroidRuntime(21610): ... 10 more
01-10 02:06:55.721 E/AndroidRuntime(21610): Suppressed: java.lang.ClassNotFoundException: org.kman.AquaMail.core.AquaMailApplication
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.Class.classForName(Native Method)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
01-10 02:06:55.721 E/AndroidRuntime(21610): ... 13 more
01-10 02:06:55.721 E/AndroidRuntime(21610): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
01-10 02:06:55.728 W/asset ( 740): Asset path /data/app/org.kman.AquaMail-2/base.apk is neither a directory nor file (type=1).
First time I'm seeing this myself, during development, as opposed to user reports from Google Play.
The class is there, has been for years and years. Just re-starting the app from its launcher icon (without a reinstall) worked fine, no exception this time.
How in the world can an "operating system" lose track of some of application components?
How in the world can a bug like this go unfixed for so long?
I really hope this report isn't ignored for a couple of years and then marked "obsolete" when Android 6.0 is released.
Please.
The output of "adb bugreport" is attached.
---
01-10 02:06:55.721 E/AndroidRuntime(21610): FATAL EXCEPTION: main
01-10 02:06:55.721 E/AndroidRuntime(21610): Process: org.kman.AquaMail, PID: 21610
01-10 02:06:55.721 E/AndroidRuntime(21610): java.lang.RuntimeException: Unable to instantiate application org.kman.AquaMail.core.AquaMailApplication: java.lang.ClassNotFoundException: Didn't find class "org.kman.AquaMail.core.AquaMailApplication" on path: DexPathList[[],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.LoadedApk.makeApplication(LoadedApk.java:563)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4491)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread.access$1500(ActivityThread.java:144)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1339)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.os.Handler.dispatchMessage(Handler.java:102)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.os.Looper.loop(Looper.java:135)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.ActivityThread.main(ActivityThread.java:5221)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.reflect.Method.invoke(Native Method)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.reflect.Method.invoke(Method.java:372)
01-10 02:06:55.721 E/AndroidRuntime(21610): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
01-10 02:06:55.721 E/AndroidRuntime(21610): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
01-10 02:06:55.721 E/AndroidRuntime(21610): Caused by: java.lang.ClassNotFoundException: Didn't find class "org.kman.AquaMail.core.AquaMailApplication" on path: DexPathList[[],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-10 02:06:55.721 E/AndroidRuntime(21610): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.Instrumentation.newApplication(Instrumentation.java:979)
01-10 02:06:55.721 E/AndroidRuntime(21610): at android.app.LoadedApk.makeApplication(LoadedApk.java:558)
01-10 02:06:55.721 E/AndroidRuntime(21610): ... 10 more
01-10 02:06:55.721 E/AndroidRuntime(21610): Suppressed: java.lang.ClassNotFoundException: org.kman.AquaMail.core.AquaMailApplication
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.Class.classForName(Native Method)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
01-10 02:06:55.721 E/AndroidRuntime(21610): at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
01-10 02:06:55.721 E/AndroidRuntime(21610): ... 13 more
01-10 02:06:55.721 E/AndroidRuntime(21610): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
01-10 02:06:55.728 W/asset ( 740): Asset path /data/app/org.kman.AquaMail-2/base.apk is neither a directory nor file (type=1).
nm...@gmail.com <nm...@gmail.com> #9
Looks like a duplicate of 56296
[Deleted User] <[Deleted User]> #10
I'm seeing this too when passing a parcelable in a bundle from the Application context to an Activity. I've solved it by setting the class loader on the parcel before trying to extract the parcelable. For example, in my GlobalState
public class GlobalState extends Application {
...
// _profile is: public class Profile implements Parcelable
// this uses a service to send the profile object in a bundle to
// result receivers in activities
Topics.dispatchProfileUpdated(GlobalState.this, _profile);
...
}
in the receiver I have
parcel.setClassLoader(getContext().getClassLoader());
_profile = parcel.getParcelable(Topics.TOPIC_PROFILE_PARAM_PROFILE);
public class GlobalState extends Application {
...
// _profile is: public class Profile implements Parcelable
// this uses a service to send the profile object in a bundle to
// result receivers in activities
Topics.dispatchProfileUpdated(GlobalState.this, _profile);
...
}
in the receiver I have
parcel.setClassLoader(getContext().getClassLoader());
_profile = parcel.getParcelable(Topics.TOPIC_PROFILE_PARAM_PROFILE);
da...@gmail.com <da...@gmail.com> #11
Same issue reported on Android 5.0 version, any solution provided by android development team?
va...@gmail.com <va...@gmail.com> #12
I can reproduce it with almost 100% RR with these steps:
1) Open a screen with map fragment
2) Scroll the map constantly
3) While scrolling, update application (install using adb).
In real life this step happens when automatic update starts
4) Observe the crash "Unable to instantiate application" at android.app.LoadedApk.makeApplication(LoadedApk.java:563)
at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:409)
Android 5.1, N5.
Activity manager throws warning:
Force removing ActivityRecord{2175709e u0 <cut>MapActivity t5094}: app died, no saved state
Unable to retrieve gids
android.content.pm.PackageManager$NameNotFoundException:com.asda.android
at android.app.ApplicationPackageManager.getPackageGids(ApplicationPackageManager.java:193)
at com.android.server.am.ActivityManagerService.startProcessLocked(ActivityManagerService.java:2930)
at com.android.server.am.ActivityManagerService.startProcessLocked(ActivityManagerService.java:2883)
at com.android.server.am.ActivityManagerService.startProcessLocked(ActivityManagerService.java:2768)
at com.android.server.am.ActivityStackSupervisor.startSpecificActivityLocked(ActivityStackSupervisor.java:1292)
at com.android.server.am.ActivityStack.resumeTopActivityInnerLocked(ActivityStack.java:1891)
at com.android.server.am.ActivityStack.resumeTopActivityLocked(ActivityStack.java:1455)
at com.android.server.am.ActivityStack.resumeTopActivityLocked(ActivityStack.java:1438)
at com.android.server.am.ActivityStack.finishCurrentActivityLocked(ActivityStack.java:2807)
at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2736)
at com.android.server.am.ActivityStack.forceStopPackageLocked(ActivityStack.java:3853)
at com.android.server.am.ActivityStackSupervisor.forceStopPackageLocked(ActivityStackSupervisor.java:2419)
at com.android.server.am.ActivityManagerService.forceStopPackageLocked(ActivityManagerService.java:5659)
at com.android.server.am.ActivityManagerService.access$400(ActivityManagerService.java:238)
at com.android.server.am.ActivityManagerService$MainHandler.handleMessage(ActivityManagerService.java:1556)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
at com.android.server.ServiceThread.run(ServiceThread.java:46)
Spurious death for ProcessRecord{15de531 14790:com.asda.android/u0a204 }, curProc for 14790: null
I hope this will help to fix this ancient crash. And yes, it is not "obsolete".
1) Open a screen with map fragment
2) Scroll the map constantly
3) While scrolling, update application (install using adb).
In real life this step happens when automatic update starts
4) Observe the crash "Unable to instantiate application" at android.app.LoadedApk.makeApplication(LoadedApk.java:563)
at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:409)
Android 5.1, N5.
Activity manager throws warning:
Force removing ActivityRecord{2175709e u0 <cut>MapActivity t5094}: app died, no saved state
Unable to retrieve gids
android.content.pm.PackageManager$NameNotFoundException:
at android.app.ApplicationPackageManager.getPackageGids(ApplicationPackageManager.java:193)
at com.android.server.am.ActivityManagerService.startProcessLocked(ActivityManagerService.java:2930)
at com.android.server.am.ActivityManagerService.startProcessLocked(ActivityManagerService.java:2883)
at com.android.server.am.ActivityManagerService.startProcessLocked(ActivityManagerService.java:2768)
at com.android.server.am.ActivityStackSupervisor.startSpecificActivityLocked(ActivityStackSupervisor.java:1292)
at com.android.server.am.ActivityStack.resumeTopActivityInnerLocked(ActivityStack.java:1891)
at com.android.server.am.ActivityStack.resumeTopActivityLocked(ActivityStack.java:1455)
at com.android.server.am.ActivityStack.resumeTopActivityLocked(ActivityStack.java:1438)
at com.android.server.am.ActivityStack.finishCurrentActivityLocked(ActivityStack.java:2807)
at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2736)
at com.android.server.am.ActivityStack.forceStopPackageLocked(ActivityStack.java:3853)
at com.android.server.am.ActivityStackSupervisor.forceStopPackageLocked(ActivityStackSupervisor.java:2419)
at com.android.server.am.ActivityManagerService.forceStopPackageLocked(ActivityManagerService.java:5659)
at com.android.server.am.ActivityManagerService.access$400(ActivityManagerService.java:238)
at com.android.server.am.ActivityManagerService$MainHandler.handleMessage(ActivityManagerService.java:1556)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.os.HandlerThread.run(HandlerThread.java:61)
at com.android.server.ServiceThread.run(ServiceThread.java:46)
Spurious death for ProcessRecord{15de531 14790:
I hope this will help to fix this ancient crash. And yes, it is not "obsolete".
km...@gmail.com <km...@gmail.com> #13
There is a new scenario in 5.0+ involving WebView.
Since WebView implementation is now a separate component and gets updates via Play -- it may happen to be in the process of getting updated at the same time as the user is (unknowingly) trying to use WebView in an app.
The result is the app crashing (and of course it's the app, not Android, getting the blame).
I have crash logs from Play Developer Console, and would be happy to post them if needed (if there is any interest... so far, seems like there is none... would be glad to be wrong about it).
Since WebView implementation is now a separate component and gets updates via Play -- it may happen to be in the process of getting updated at the same time as the user is (unknowingly) trying to use WebView in an app.
The result is the app crashing (and of course it's the app, not Android, getting the blame).
I have crash logs from Play Developer Console, and would be happy to post them if needed (if there is any interest... so far, seems like there is none... would be glad to be wrong about it).
en...@google.com <en...@google.com>
ia...@gmail.com <ia...@gmail.com> #14
Unbelievable ! Well done GOOGLE!
km...@gmail.com <km...@gmail.com> #15
Could someone from Google comment on how a bug is marked "Obsolete" when 1) no effort is made to find out if it's still there in 5.0 and 2) there is a comment saying the bug is present in 5.0?
Are all bugs reported against 5.0 and 5.1 now considered "obsolete" because you've got Android M coming up?
Are all bugs reported against 5.0 and 5.1 now considered "obsolete" because you've got Android M coming up?
an...@gmail.com <an...@gmail.com> #16
This is happening for the latest Marshmallow updates on a Nexus 5. Three updates in a row my app has crashed. Android System Webview also doesn't automatically install on any of the phones I've experienced this with following an update, unless it takes days. This is garbage.
je...@gmail.com <je...@gmail.com> #17
Pretty clear this is a race condition between something starting the app and it getting re-installed. I've seen a logcat around the crash. You can see Android getting a request to start a receiver (although it can happen with other components of course). It spawns the zygote, then tries to load the application class. It tries to open the APK resource, can't find it, then crashes the zygote. While it's technically your app that's crashing, none of your app's code was even running yet.
Here's the code in LoadedApk.java,
try {
java.lang.ClassLoader cl = getClassLoader();
if (!mPackageName.equals("android")) {
initializeJavaContextClassLoader();
}
ContextImpl appContext = ContextImpl.createAppContext(mActivityThread, this);
app = mActivityThread.mInstrumentation.newApplication(
cl, appClass, appContext);
appContext.setOuterContext(app);
} catch (Exception e) {
if (!mActivityThread.mInstrumentation.onException(app, e)) {
throw new RuntimeException(
"Unable to instantiate application " + appClass
+ ": " + e.toString(), e);
}
}
Barring some complex locking between app installation and all of the entry points that start components in your app, I think a "fix" here could be to just silently close the process. What else can you do? Someone asked your app to run, but the code isn't there.
Here's the code in LoadedApk.java,
try {
java.lang.ClassLoader cl = getClassLoader();
if (!mPackageName.equals("android")) {
initializeJavaContextClassLoader();
}
ContextImpl appContext = ContextImpl.createAppContext(mActivityThread, this);
app = mActivityThread.mInstrumentation.newApplication(
cl, appClass, appContext);
appContext.setOuterContext(app);
} catch (Exception e) {
if (!mActivityThread.mInstrumentation.onException(app, e)) {
throw new RuntimeException(
"Unable to instantiate application " + appClass
+ ": " + e.toString(), e);
}
}
Barring some complex locking between app installation and all of the entry points that start components in your app, I think a "fix" here could be to just silently close the process. What else can you do? Someone asked your app to run, but the code isn't there.
Description
I'm only seeing a handful (about two dozen) of these crashes, but if the classes really were not there, I'd be seeing thousands of them.
If this is some sort of file system corruption, bad storage chip, etc., why is there no integrity checking in an "operating system"?
- Example 1 -
java.lang.RuntimeException: Unable to instantiate application org.kman.AquaMail.core.AquaMailApplication: java.lang.ClassNotFoundException: org.kman.AquaMail.core.AquaMailApplication
at android.app.LoadedApk.makeApplication(LoadedApk.java:501)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4253)
at android.app.ActivityThread.access$1400(ActivityThread.java:143)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1301)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4950)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: org.kman.AquaMail.core.AquaMailApplication
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newApplication(Instrumentation.java:982)
at android.app.LoadedApk.makeApplication(LoadedApk.java:496)
... 11 more
The class (org.kman.AquaMail.core.AquaMailApplication) really is there.
Someone might say - "Using Application subclass is a bad design pattern, smells of Singleton, etc."
Ok, fine. However:
- Example 2 -
This one is a content provider
java.lang.RuntimeException: Unable to get provider org.kman.AquaMail.datax.ExportedAccountProvider: java.lang.ClassNotFoundException: Didn't find class "org.kman.AquaMail.datax.ExportedAccountProvider" on path: DexPathList[[zip file "/data/app/org.kman.AquaMail-1.apk"],nativeLibraryDirectories=[/data/app-lib/org.kman.AquaMail-1, /vendor/lib, /system/lib]]
at android.app.ActivityThread.installProvider(ActivityThread.java:4793)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4385)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4325)
at android.app.ActivityThread.access$1500(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.kman.AquaMail.datax.ExportedAccountProvider" on path: DexPathList[[zip file "/data/app/org.kman.AquaMail-1.apk"],nativeLibraryDirectories=[/data/app-lib/org.kman.AquaMail-1, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
at android.app.ActivityThread.installProvider(ActivityThread.java:4778)
... 12 more
And:
- Example 3 -
java.lang.NoClassDefFoundError: org/kman/AquaMail/ui/AccountListShard
at org.kman.AquaMail.ui.AccountListFragment.<init>(AccountListFragment.java:8)
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1130)
at android.app.Fragment.instantiate(Fragment.java:589)
at android.app.Fragment.instantiate(Fragment.java:560)
at android.app.Activity.onCreateView(Activity.java:4958)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:695)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:769)
at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
at de.robv.android.xposed.XposedBridge.invokeOriginalMethodNative(Native Method)
at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:547)
at android.view.LayoutInflater.inflate(Native Method)
at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
at android.view.LayoutInflater.inflate(LayoutInflater.java:354)
[ snipped ]
Now this one is clearly from a custom ROM (xposed framework), however, there are my app's classes further up the call back (snipped), so the .apk is there, and so are the classes.