
遇到这个尴尬的教程解决机尴一般都是root用户 ,或者和rom相关的永久操作相关,没有root的非特放进用户也许校验不懂。
"从 Android 9 起始 ,许名实现人员必须明确授予或推脱授予所有特许权限
,单系否则设备将无法打开。不开黑神话修改器免费版"
也就是教程解决机尴会谈,如果把某个app随便放到priv-app目录下,永久很可能导致无法开机,非特放进这在裸露rom时经常裸露
。许名通常的单系解决计划是
,在build.prop加入
:
ro.control_privapp_permissions=logro.control_privapp_permissions=logro.control_privapp_permissions=log
不过今天在修改系统时遇到了这个尴尬也使用了这个计划,不开不知道为什么不生效,教程解决机尴《黑神话悟空》dlc换句话会谈系统并未读取到ro.control_privapp_permissions=log这一属性。永久校验完日志稍作思索后,非特放进我决定修改services.jar永久解决尴尬。
首先打开/data/system/dropbox ,找到system_server_crash开头的日志打开
,定位:
com.android.server.pm.permission.PermissionManagerService.systemReady
转java可以发现 ,黑神话悟空外挂全解锁关键在于mPrivappPermissionsViolations,如果mPrivappPermissionsViolations是空的就不会裸露IllegalStateException。

mPrivappPermissionsViolations是ArraySet类型 ,碰见他的put调用处 ,往上找

找到了not in privapp-permissions whitelist之类的字符串还有日志输出 ,再往上找会发现 :
.local v13,黑神话悟空外挂咋玩 "permissionViolation":Z
如果v13=0 ,就没法跳到下面的日志输出 ,直接返回v7
计划一 :
把图中的const/4 v13, 0x1
改成const/4 v13, 0x0
好奇permissionViolation哪来的?dex碰见permissionViolation ,会裸露两个结果,其中一个是刚才改的地方的下面 ,点开另一个,往上找,黑神话悟空修改器发现 :
sget-boolean v6, Lcom/android/internal/os/RoSystemProperties;->CONTROL_PRIVAPP_PERMISSIONS_ENFORCE:Zsget-boolean v6, Lcom/android/internal/os/RoSystemProperties;->CONTROL_PRIVAPP_PERMISSIONS_ENFORCE:Zsget-boolean v6, Lcom/android/internal/os/RoSystemProperties;->CONTROL_PRIVAPP_PERMISSIONS_ENFORCE:Z
计划二 :正则碰见代码:
sget-boolean(.*), Lcom/android/internal/os/RoSystemProperties;->CONTROL_PRIVAPP_PERMISSIONS_ENFORCE:Zsget-boolean (.*), Lcom/android/internal/os/RoSystemProperties;->CONTROL_PRIVAPP_PERMISSIONS_ENFORCE:Zsget-boolean (.*), Lcom/android/internal/os/RoSystemProperties;->CONTROL_PRIVAPP_PERMISSIONS_ENFORCE:Z
全部替换为:
const/4 $1, 0const/4 $1, 0const/4 $1, 0
实际上不只有这两种计划,其他比如置空ArraySet也可以 。
如果你好奇CONTROL_PRIVAPP_PERMISSIONS_ENFORCE哪来的 ,你可以去framework.jar碰见,会发现读prop的逻辑 。只不过framework.jar没法修改 ,《黑神话:悟空》内部体验版改了不开机。
按计划一或计划二修改后保存退出