yuandaimaahao / AndroidFrameworkTutorial

写给应用开发的 Android Framework 教程
Apache License 2.0
793 stars 208 forks source link

怎么检查动态申请的权限是从哪里发出的 #30

Open yuandaimaahao opened 1 year ago

df13954 commented 1 year ago

权限申请

申请是通过androidx.core.app.ActivityCompat#requestPermissions这个api申请的,就算是第三方封装的框架,也是这个api。

方案1

通过hook框架hook这个方法requestPermissions,然后打印调用堆栈。如果apk有反调试,需要先过反调试。

方案2

在AOSP源码中requestPermissions增加打印堆栈代码,编译刷机安装app运行。看堆栈log就行。

方案3

反编译apk,搜索requestPermissions,然后查看所有调用地方,如果apk加壳了需要先脱壳。

推荐

推荐方案2