在判断是否创建快捷方式的时候,由于不同终端厂商把 权限 com.android.launcher.permission.READ_SETTINGS 进行了命名空间的调整,导致直接添加此权限无效,无法读取 favorites 表,有什么办法可以通过代码动态增加权限吗》?

解决方案 »

  1.   


    PermissionInfo perInfo=new PermissionInfo();
    perInfo.name="com.huawei.android.launcher.permission.READ_SETTINGS";
    context.getPackageManager().addPermission(perInfo);
    //抛这个异常java.lang.SecurityException: Label must be specified in permission有没高手,指点哈,急啊,,,,,
      

  2.   

    官方都有API的嘛,,,
     PermissionInfo perInfo=new PermissionInfo();
            perInfo.name="com.huawei.android.launcher.permission.READ_SETTINGS";
            context.getPackageManager().addPermission(perInfo);
      

  3.   

    那安装的时候就没必要确认permission了
      

  4.   


    我想在 app运行过程中增加的啊
      

  5.   


    这个api不是给第三方用的
      

  6.   

    没法加的
    Google要你显式声明在xml中的原因就是安全性考虑
    让用户在选择和安装APK的时候随时都可以查看这个APK所使用的权限如果有方法不在APK中的XML中声明 就申请到权限
    那任何人都可以只显式的声明正常的权限甚至不写权限 然后隐式的申请威胁性的权限
    (譬如发收费短信等等)
    而用户完全不知道楼主的需求只能通过在XML中多次添加不同厂商的uses-permission