标签: android android-manifest android-permissions
我已经获得了Android应用的源代码,其清单包含了很多 uses-permission ,其中一些我觉得它并不需要。除了测试整个应用程序之外,还有一种简单的方法可以找到哪些类或方法使用特定权限吗?
答案 0 :(得分:0)
删除Manifest中的所有权限,然后运行App。然后logcat将显示所需的权限。
答案 1 :(得分:0)
正如this论文指出的那样,API文档经常是错误的,需要哪些权限,而且许多应用程序都是“过度特权”,这意味着清单声明了对所使用的类和方法不必要的权限。
不幸的是,论文中描述的Stowaway工具目前处于脱机状态,我知道没有其他专门用于执行您正在寻找的分析的工具。这种工具的一个问题是,每次发布新版本时,必须根据Android源代码重新完成方法 - >所需权限映射。这篇论文以姜饼为基础,显然自那以后发生了很多变化。也许他们无法保持相关性。
所以在这一点上,进行一次性检查的最快方法是删除所有权限,然后根据您在logcat中看到的安全性异常逐个添加它们。