zer*_*dth 2 android code-inspection android-lint android-permissions android-studio
我正在开发一个Android库,它提供了进入各种系统服务和收集数据进行分析的方法.我的类使用各种系统服务管理器(如WifiManager)来收集数据.
我喜欢来构建我的图书馆的清单,使得它不抓住所有,所有这些功能都需要可能的权限.相反,我想把它留给使用该库的应用程序,只声明它需要的权限,这可能是库使用的权限的一小部分.
这实际上在实践中有效,因为在构建过程中所有清单都会合并在一起,因此应用程序最终会获得使用库功能所需的权限.然而,由于<uses-permission>标签是不是在图书馆的清单,代码全都亮了起来,从Android Studio中的警告.
有没有办法注释我的库代码,以便忽略权限检查?
当然,我可以简单地关掉在"恒和资源类型不匹配"检查我的Android Studio设置,但不会帮助任何人谁是试图利用图书馆.我试图在文档中找到对此检查的引用(所以我可以用它来杀死@SuppressWarnings但尚未找到它.
这甚至是一种有价值的方法吗?
...或者我应该让库获取它需要的所有权限,这会强制库的使用者使用其清单中的属性关闭它不需要的库?这里的问题是,当我向我的库添加功能时,我的库的消费者将不得不反复回圈并明确删除这些新权限.我觉得这不是一个伟大的模型,我宁愿将许可请求留给我的消费者.tools:node="remove"
考虑以下关于这个主题的对话 -
只需随机右键单击该问题,我就可以在Android Studio中选择Suppress for method context命令,并添加了以下注释:
@SuppressWarnings( "ResourceType" )
Run Code Online (Sandbox Code Playgroud)
所以......耶!有使用哪种注释的答案.
不过,我仍然对人们对这种方法的看法感兴趣.请随意在答案部分哈希表示.^ _ ^
| 归档时间: |
|
| 查看次数: |
671 次 |
| 最近记录: |