包经理人已去世(Package manager has died)

2019-08-19 03:43发布

我收到一封电子邮件从谁拥有大量的安装,他有当我的应用程序收集活动信息与此代码问题的应用程序的用户:

getPackageManager().queryIntentActivities(mAinIntent, 0)

整个源代码在这里: https://github.com/ligi/FAST

这是什么情况

Caused by: java.lang.RuntimeException: Package manager has died
at android.app.ApplicationPackageManager.queryIntentActivities(ApplicationPackageManager.java:479)
at org.ligi.fast.BaseAppGatherAsyncTask.doInBackground(BaseAppGatherAsyncTask.java:34)
at org.ligi.fast.BaseAppGatherAsyncTask.doInBackground(BaseAppGatherAsyncTask.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
... 5 more
Caused by: android.os.TransactionTooLargeExceptionTransactionTooLargeException
at android.os.BinderProxy.transact(Native Method)
at android.content.pm.IPackageManager$Stub$Proxy.queryIntentActivities(IPackageManager.java:2230)
at android.app.ApplicationPackageManager.queryIntentActivities(ApplicationPackageManager.java:473)
... 9 more
Log:
0 D: Writing unhandled exception to: /data/data/org.ligi.fast/files/3.7-1364933885194.tracedroid

似乎是我对1MB边界运行的问题,而是如何离开这里? 我还能如何得到所需要的信息? 有没有办法来块了数据?

Answer 1:

我使用相同的用户输入就遇到了这个错误前一阵子。 虽然我抛出的事件是不同的。 我结束了捕捉异常并优雅地汇报用户存在与处理能力安装太多应用程序。 走出几十万安装我只看到这个错误关闭,一手一个项目少于五次,我知道这是不是一个借口,但某些设备只是没有堆处理索引安装每个应用程序的意图在设备上。



文章来源: Package manager has died