相关疑难解决方法(0)

Android应用程序上的DeadObjectException

有时候,我开始了Activity我的应用程序,或者在快速切换Fragment的A S ViewPager是在特定的Activity,我有DeadObjectException这样的:

W/ActivityManager(  669): android.os.DeadObjectException
W/ActivityManager(  669):   at android.os.BinderProxy.transact(Native Method)
W/ActivityManager(  669):   at android.app.ApplicationThreadProxy.schedulePauseActivity(ApplicationThreadNative.java:660)
W/ActivityManager(  669):   at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:776)
W/ActivityManager(  669):   at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2501)
W/ActivityManager(  669):   at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2375)
W/ActivityManager(  669):   at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2040)
W/ActivityManager(  669):   at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:9667)
W/ActivityManager(  669):   at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:9560)
W/ActivityManager(  669):   at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:10205)
W/ActivityManager(  669):   at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:9756)
W/ActivityManager(  669):   at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:86
Run Code Online (Sandbox Code Playgroud)

和应用程序崩溃.我也有一些像这样的不寻常的日志:

F/libc    (24088): Fatal signal 11 (SIGSEGV) at 0x00000020 (code=1), thread 24115 (Thread-1047)
I/DEBUG   (23974): *** *** *** *** *** …
Run Code Online (Sandbox Code Playgroud)

java android memory-management android-activity

34
推荐指数
2
解决办法
6万
查看次数

具有指向的堆栈跟踪的DeadObjectException:android.app.ApplicationPackageManager.getPackageInstaller

我看到在崩溃中报告了崩溃,其中有一个堆栈跟踪,没有提到我的应用程序代码.

我在com.google.android.gms中看到了DeadObjectException,并且在删除侦听器时触发了崩溃.

此外,每次我的应用程序启动时,我都会获得安装程序以进行日志记录,即

packageManager.getInstallerPackageName(my-package-name)
Run Code Online (Sandbox Code Playgroud)

此调用没有与回调相关联的回调.

主要在Lollipop和Kitkat上观察到崩溃,尽管很少有Marshmallow和Nougat用户也经历过崩溃.

有没有人经历类似的事情?

Fatal Exception: java.lang.RuntimeException: android.os.DeadObjectException
       at android.app.ApplicationPackageManager.getPackageInstaller(ApplicationPackageManager.java:1632)
       at com.google.android.gms.common.zze.zzl(Unknown Source)
       at com.google.android.gms.common.GoogleApiAvailability.getInstance(Unknown Source:8000)
       at com.google.android.gms.internal.zzpy.zzc(Unknown Source:24000)
       at com.google.android.gms.internal.zzpv.begin(Unknown Source)
       at com.google.android.gms.internal.zzqa.zzc(Unknown Source)
       at com.google.android.gms.internal.zzpp.onConnectionSuspended(Unknown Source)
       at com.google.android.gms.common.internal.zzk$1.onConnectionSuspended(Unknown Source)
       at com.google.android.gms.common.internal.zzd$zzd.handleMessage(Unknown Source)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:135)
       at android.app.ActivityThread.main(ActivityThread.java:5438)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)
Caused by android.os.DeadObjectException
       at android.os.BinderProxy.transactNative(Binder.java)
       at android.os.BinderProxy.transact(Binder.java:496)
       at android.content.pm.IPackageManager$Stub$Proxy.getPackageInstaller(IPackageManager.java:4229)
       at android.app.ApplicationPackageManager.getPackageInstaller(ApplicationPackageManager.java:1629)
       at com.google.android.gms.common.zze.zzl(Unknown Source)
       at com.google.android.gms.common.GoogleApiAvailability.getInstance(Unknown Source:8000)
       at com.google.android.gms.internal.zzpy.zzc(Unknown Source:24000)
       at com.google.android.gms.internal.zzpv.begin(Unknown Source)
       at com.google.android.gms.internal.zzqa.zzc(Unknown …
Run Code Online (Sandbox Code Playgroud)

android

11
推荐指数
1
解决办法
998
查看次数

GMS :: LocationClient(Android)中的DeadObjectException

在Android上,我们有一个包装来自GMS(Google移动服务)的LocationClient对象的类.(请注意,LocationClient实现了com.google.android.gms.common.GooglePlayServicesClient).

不幸的是,LocationClient对象习惯于抛出DeadObjectExceptions(例如当我们调用locationClient.getLastLocation()时),我们通过几种日志记录机制检测到它.然而,有点奇怪的是,LocationClient没有被记录为抛出DeadObjectExceptions,而且我只能捕获所说的DeadObjectExceptions大约1/40的时间o_0.我们没有这个问题的责备,我个人从未见过它,但它发生在我们的大量用户身上.

其他说明:

[a]什么是"引起:java.lang.IllegalStateException:android.os.DeadObjectException"这一行?这两种异常类型没有祖先 - 后代关系

[b]我发布到Android论坛,但当然他们拒绝我的帖子为"错误的论坛",并且没有GMS论坛所以我完全没有运气.

总而言之,问题是:GMS正在触发这个奇怪的无法捕获的异常,那么该怎么做呢?我该怎么办?

Here's a stack trace:
com.myapp.android.service.AsyncExecutionException
     at com.myapp.android.service.AsyncService$ExceptionThrower.run(MyApp:120)
     at android.os.Handler.handleCallback(Handler.java:615)
     at android.os.Handler.dispatchMessage(Handler.java:92)
     at android.os.Looper.loop(Looper.java:137)
     at android.app.ActivityThread.main(ActivityThread.java:4794)
     at java.lang.reflect.Method.invokeNative(Method.java)
     at java.lang.reflect.Method.invoke(Method.java:511)
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
     at dalvik.system.NativeStart.main(NativeStart.java)
Caused by: java.lang.IllegalStateException: android.os.DeadObjectException
     at com.google.android.gms.internal.ey.getLastLocation()
     at com.google.android.gms.internal.ez.getLastLocation()
     at com.google.android.gms.location.LocationClient.getLastLocation()
     ***at com.myapp.GoogleLocationProvider.getLastLocation(MyApp:92)***
     at com.myapp.LocationProducer.getLocation(MyApp:183)
     at com.myapp.LocationProducer.getLocationHeader(MyApp:194)
     at com.myapp.API.onExecute(MyApp:344)
     ...
     at java.lang.Thread.run(Thread.java:856)
Caused by: android.os.DeadObjectException
     at android.os.BinderProxy.transact(Binder.java)
     at com.google.android.gms.internal.ex$a$a.a()
     at com.google.android.gms.internal.ey.getLastLocation()
     at com.google.android.gms.internal.ez.getLastLocation()
     ***at com.google.android.gms.location.LocationClient.getLastLocation()***
     at com.myapp.GoogleLocationProvider.getLastLocation(MyApp:92)
     at com.myapp.LocationProducer.getLocation(MyApp:183)
     at com.myapp.LocationProducer.getLocationHeader(MyApp:194)
     ...
     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
     at java.util.concurrent.FutureTask.run(FutureTask.java:137) …
Run Code Online (Sandbox Code Playgroud)

android location-client

3
推荐指数
1
解决办法
2214
查看次数