My App have a code segment that get installed applications in phone. and I use the getInstalledPackages API. and I found this will make my application crash and I will get java.lang.RuntimeException: Package manager has died.
My question is why it it happened and how to solve it(to get installed applications) by this way or other way?
this is one of the reports:
at android.app.ApplicationPackageManager.getApplicationInfo(ApplicationPackageManager.java:224)
at com.baidu.location.ae.a(Unknown Source)
at com.baidu.location.LocationClient.getAccessKey(Unknown Source)
at com.baidu.location.LocationClient.cy(Unknown Source)
at com.baidu.location.LocationClient.do(Unknown Source)
at com.baidu.location.LocationClient$a.handleMessage(Unknown Source)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5050)
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:805)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:621)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.os.DeadObjectException
at android.os.BinderProxy.transact(Native Method)
at android.content.pm.IPackageManager$Stub$Proxy.getApplicationInfo(IPackageManager.java:1740)
at android.app.ApplicationPackageManager.getApplicationInfo(ApplicationPackageManager.java:219)