如何使用gradle构建Android应用程序时删除特定权限? [英] How to remove specific permission when build Android app with gradle?
问题描述
有人问这里为什么当包括Google Play服务库时,权限会自动添加到我的AndroidManifest中
我的问题是某些权限不需要,我不想要一些敏感权限在我的应用程序。那么如何删除像 android.permission.ACCESS_COARSE_LOCATION 这样的权限?
使用gradle构建,我不想禁用Manifest Merger。我阅读了一些可以配置合并以从外部库中删除权限的地方,但我找不到如何执行它。 解决方案
添加属性工具:节点
的值为删除
到您的清单:
< manifest ... xmlns:tools =http://schemas.android.com/tools>
...
<使用权限android:name =android.permission.READ_PHONE_STATEtools:node =remove/>
...
< / manifest>
请参阅 http://tools.android.com/tech-docs/new-build-system/user-guide / manifest-merger#TOC-tools:节点标记
不要忘记添加工具
命名空间添加到清单的根元素。
Recently Google auto merge permission from Google Service to final release apk. Some one ask here Why are permissions being automatically added to my AndroidManifest when including Google Play Services library
My problem is some permission don't need and I don't want some sensitive permission in my app. So how to remove permission like android.permission.ACCESS_COARSE_LOCATION ? With gradle build, I don't want to disable Manifest Merger. I read some where that can config Merger to remove permission from external lib, but I can't find how to do it.
Add attribute tools:node
with a value of remove
to your manifest:
<manifest ... xmlns:tools="http://schemas.android.com/tools">
...
<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove"/>
...
</manifest>
Don't forget to add the tools
namespace to the root element of your manifest.
这篇关于如何使用gradle构建Android应用程序时删除特定权限?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!