美文网首页
Android权限警告(not in privapp-permi

Android权限警告(not in privapp-permi

作者: 编程小记 | 来源:发表于2020-06-11 22:11 被阅读0次

    一.发生错误时候的现象和log打印
    1.现象 模块使用了Settings.Global之后,单编模块push到手机里面重启,发现手机卡在开机logo界面,开不了机

    2.抓取logcat看log打印会发现如下图片中的打印,主要的关键词为Privileged permissions not in privapp-permissions whitelist


    图片1.png

    二.查找源码定位问题(Q的代码)
    文件路径PermissionManagerService.java(frameworks\base\services\core\java\com\android\server\pm\permission)


    图片2.png

    三.修改的位置
    1.frameworks\base\data\etc 在这个文件夹下面有很多xml文件,除了privapp-permissions-platform.xml文件其他有些文件比如com.android.dialer.xml是单独以包名分开的,可以再里面添加权限 比如我在com.android.dialer.xml文件中添加了权限WRITE_SECURE_SETTINGS的权限


    图片3.png

    2.对应的模块需要在manifest文件中加上权限android.permission.WRITE_SECURE_SETTINGS

    四.如何验证
    整编代码-------刷机----------导出文件有没有生效 生成文件目录/system/etc/permissions/privapp-permissions-platform.xml 或者/product/etc/permissions/com.android.dialer.xml 这个生成的目录具体是由同级目录下的Android.bp决定的,实在找不到就find搜索文件


    图片4.png

    五.快速验证
    在手机中adb shell进入目录,导出对应的xml文件,添加好权限,push到源目录,reboot尝试是否可以开机,若可以表示添加的权限是ok的,然后就放心大胆的添加在framework下的对应文件里面,整编ok提交代码上库。

    相关文章

      网友评论

          本文标题:Android权限警告(not in privapp-permi

          本文链接:https://www.haomeiwen.com/subject/hpnitktx.html