我使用java的反射机制调用android隐藏的api时报10114错误说没有android.permission.DELETE_CACHE_FILES权限,但是我在清单文件里面添加了这项权限后还是报这个错,请问怎么样才能加上这个权限啊

解决方案 »

  1.   

    1、permission 是否声明在application标签外
    2、这个权限是否是系统级别的权限
      

  2.   

    <application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".YouHua" android:label="@string/app_name">
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    <activity android:name=".ApplicatonList"
    android:screenOrientation="portrait">
    </activity>
    <activity android:name=".AppDetails"
    android:screenOrientation="portrait">
    </activity>
    </application>
    <uses-permission android:name="android.permission.GET_PACKAGE_SIZE" />
    <uses-permission android:name="android.permission.DELETE_CACHE_FILES" />
      

  3.   

    反射机制的问题。
    java的代码反射了,
    但是一些配置,做不过去啊。
      

  4.   

    这个权限应该没有什么特殊的
    建议再分析下log
      

  5.   

    一直会报下面的这个错误:Caused by: java.lang.SecurityException: Neither user 10114 nor current process has android.permission.DELETE_CACHE_FILES.
    06-09 10:19:53.736: WARN/System.err(3382):     at android.os.Parcel.readException(Parcel.java:1247)
    06-09 10:19:53.736: WARN/System.err(3382):     at android.os.Parcel.readException(Parcel.java:1235)
    06-09 10:19:53.736: WARN/System.err(3382):     at android.content.pm.IPackageManager$Stub$Proxy.deleteApplicationCacheFiles(IPackageManager.java:2293)
    06-09 10:19:53.736: WARN/System.err(3382):     ... 16 more
      

  6.   

    可以查看下API,看是不是还需要其他关联权限?目录访问权限
      

  7.   

    楼主的APP可能需要更高的权限
    1、在xml中加入系统权限android:sharedUserId="android.uid.system"
    2、用对应版本签名工具signapk.jar和系统的公钥私钥对生成的apk进行签名,然后再安装签名后的apk