我正在使用反射方法 freeStorageAndNotify:
Method freeStorageAndNotify = null;
freeStorageAndNotify = service.packageManager.getClass().getMethod(
"freeStorageAndNotify", long.class, IPackageDataObserver.class);
freeStorageAndNotify.invoke(PackageManager.class, maxCache + freeSpace, packageDataObserver);
这会导致InvocationTargetException异常:
java.lang.SecurityException: Neither user 10199 nor current process has android.permission.CLEAR_APP_CACHE.
一些要点:
- 我已经有 android.permission.CLEAR_APP_CACHE 权限
- 这只会在安卓"M"版本中出现(从开发者网站闪存预览SDK)
非常感谢您的帮助
framework-res.apk
的权限,确实对于CLEAR_APP_CACHE
和DELETE_CACHE_FILES
两者的保护级别都是signature|system
。 - Kane O'Riley