Skip to content

lgslegend/AppOpsX

 
 

Repository files navigation

AppOpsX

Get it on Google Play

主要是解决防止国内流氓应用在Android6.0上不给权限就不让用的问题,e.g. 几个外卖应用。
也可以不root通过adb shell appops set [--user <USER_ID>] <PACKAGE> <OP> <MODE> 忽略授予的权限。

AppOpsX 现在没有调用appops命令的方式去设置,用的是以root权限启用jar后开放LocalSocks通讯的方式去代理修改权限, 理论上多条执行的时候要比调用命令快,在应用内使用感觉会比较明显,当然底层和appops命令实现一致。

用法:

cd opsxlib
make all
cd ../app
gradle assembleDebug

将会启动一个LocalServerSocket,供client调用。 前端连接到LocalSocks 后即可发送命令去类似代理执行一样执行IAppOpsService中的方法。

所有的设置关闭权限使用了MODE_IGNORED,不要使用MODE_ERRORED,否则会导致应用设置->应用->配置应用->应用权限崩溃。

只测试了Android 6.0和7.0上可正常使用,其他版本如有问题请提issue。

init.rc: on property:service.adb.tcp.port=* restart adbd on property:service.adb.tcp.enable=1 setprop service.adb.tcp.port 5555 on property:service.adb.tcp.enable=0 setprop service.adb.tcp.port -1

About

增强权限管理器,忽略部分权限的验证

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 99.8%
  • Makefile 0.2%