首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁用依赖权限

禁用依赖权限
EN

Stack Overflow用户
提问于 2015-01-17 08:33:54
回答 2查看 4.9K关注 0票数 11

我目前面临以下问题:

我开发了应用程序'A‘,它使用权限1,2,3,并使用第三方库'B’作为依赖项(使用maven &gradle添加)。

库'B‘使用权限4和5。现在,当构建应用程序时,清单合并将权限4和5添加到app 'A’中。

如何防止这种情况,并且只具有最终清单中的权限1、2和3?

我的第一个猜测是使用清单合并标记之一,如下所示:http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger#TOC-Markers

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-17 18:01:23

您需要使用Selector

每个工具:节点或工具:attr声明可以通过工具:selector属性来增强,该属性是关于合并策略是否应该应用于当前低优先级XML描述的上下文信息。例如,仅在为某个特定库(而不是任何库)来移除权限时,这是有用的:

根据你最初的要求,这将是下一个

代码语言:javascript
复制
<!--suppress AndroidDomInspection -->
<uses-permission
    tools:node="removeAll"/>

但是请记住,所有其他<uses-permissions/>都将被删除。

票数 18
EN

Stack Overflow用户

发布于 2018-01-09 20:44:33

如您所知,所有库都有一个清单文件,并将合并在一起。您可以通过以下方式删除库中的权限:

代码语言:javascript
复制
tools:node="remove"

例如,删除位置权限:

代码语言:javascript
复制
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" tools:node="remove" />
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27997679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档