Android 哪些类可能需要*_帐户和相关权限?

Android 哪些类可能需要*_帐户和相关权限?,android,user-accounts,Android,User Accounts,我正在清理在其清单中请求以下内容的应用程序的代码: android.permission.GET_帐户 android.permission.AUTHENTICATE\u帐户 android.permission.MANAGE_账户 android.permission.USE_凭证 android.permission.interaction\u跨用户\u FULL\br> 问题是:在搜索可能需要的类/包时,我应该查找哪些类/包导入 我已经搜索了AccountManager-没有找到。可能不再

我正在清理在其清单中请求以下内容的应用程序的代码:
android.permission.GET_帐户
android.permission.AUTHENTICATE\u帐户
android.permission.MANAGE_账户
android.permission.USE_凭证
android.permission.interaction\u跨用户\u FULL\br>

问题是:在搜索可能需要的类/包时,我应该查找哪些类/包导入

我已经搜索了AccountManager-没有找到。可能不再需要它们,但我希望知道我可以确定的时间点

[编辑]使用Lint设置来帮助找到这一点会更好。这是我的:

我看不到“缺少权限”选项。
如果我删除所有权限,包括所有网络、读取\电话\状态和读取\外部\存储、应用程序构建、启动,则WifiManager.getWifiState会崩溃,并出现与访问\ WIFI\状态相关的安全异常

[EDIT2]已启用“类型不匹配”检查。Android的用户使用了@requirepermission注释。


我的配置:编译SDK版本23,最小14,目标22,构建工具版本25.0.1

我刚刚做了一次尝试,您确实应该得到一个缺少权限的警告。实际上,这甚至不是一个警告,而是一个错误。该选项位于
Settings->Editor->Inspections->Android->Constant and Resource Type Mismatches
,如果您阅读该描述,您将看到如下内容

调用需要权限而未声明的方法 舱单上的许可

本节将作为2.2.3节继续讨论

更新:


我刚刚用compile sdk 23检查了一个项目,AccountManager的源代码中实际上有
@requirepermission

如果您只是从清单中删除权限,您应该会在需要权限的地方得到一些lint警告,我guess@lelloman我没有看到。请参见编辑。听起来正是我需要的。如果默认情况下未启用,则为奇数。谢谢,我会在周一回到这个话题。好的,我已经启用了它并设置为“错误”,但它从来不会触发,即使是在一个需要互联网、摄像头和电话的测试应用程序上。我打赌@RequiresPermission注释的缺失。问题已更新。知道我还需要什么吗?嗯,听起来还是很奇怪,检查一下,@requirepermission实际上不是你调用的确切方法所必需的。