清除其它应用程序缓存(Clear another applications cache)

2019-10-17 12:42发布

从来就在这里读书周围打扫另一个应用cahce内存,并且从来就还试图编码自己的应用程序。 从来就得到了结果,是与机器人会目前securitylayer,it's不可能的。

但是,目前许多缓存清洁剂应用在那里的市场(谷歌播放)?

当我开始我的申请,我给了android.permission.DELETE_CACHE_FILES许可,logcat的印刷

Not granting permission android.permission.DELETE_CACHE_FILES to package <MY_PACKAGE_NAME> (protectionLevel=3 flags=0x8be46)

经过一番研究,我发现,3:第三方应用程序将不会被授予的权限与protectionLevel=3的话,我遇到一个java.lang.SecurityException异常每当我试图删除其他应用程序缓存(逻辑)

我的问题是为此:“如何在谷歌这些应用中扮演允许并能够删除其他应用程序缓存?”

对不起,我的英文不好,不是母语

Answer 1:

你只能这样做,如果该设备是植根和应用程序具有超级用户权限。



Answer 2:

让我告诉你,这些应用程序是如何实现这一目标。

一些android classes have methods这是private(@hidden)默认用户。 我们不能直接访问它们 。 但你有一个更好的方法来使用Reflection

添加权限。

<uses-permission android:name="android.permission.CLEAR_APP_CACHE"/>

并按照这些答案

https://stackoverflow.com/a/17334600/3496570

https://stackoverflow.com/a/14509140/3496570

而且不要忘记创建一个package名称android.content.pm并添加IPackageDataObserver.aidl包装。 然后,你是好去。



文章来源: Clear another applications cache