Andoid app三方库权限位置查找和处理

本文介绍了两种在Android开发中查找并处理三方库敏感权限的方法:使用ASFindinPath全局搜索和分析build日志。针对找到的敏感权限,提出了三种处理方案:考虑替换库或版本、通过manifest移除权限、检查库最低支持版本。同时,提供了示例代码展示如何在manifest中排除权限申请。
摘要由CSDN通过智能技术生成

查找方案:

第一种方法:使用AS Find in Path(Eclipse模式快捷键Crtl+H)全局搜索功能,选择搜索范围为scope,就能看到所搜权限在三方库中的位置,速度最快。

第二种方法:打包过程中,会在build\outputs\logs文件夹中生成log文件,在log文件中搜索权限,可以对应到具体三方库,比第一种方案精确度更好。

可以通过AS项目中的External Libraries找到权限所在的三方库,然后右键选择项目Properties来查看库下载到本机的位置,

找到aar文件,解压缩就可以看到menifest文件,这一步是做一下二次确认。

处理方案:

(1)如果权限是敏感权限,就要考虑是否使用该库,或者替换库的版本来规避。

(2)如果无法规避,又一定不能有该权限,可以通过manifest 文件权限声明tools:node="remove"来强制排除该权限的申请。

一定要保证sdk无此权限也能正常运行且不影响功能,否则的话,还需在应用中申请此权限。

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.xxx">

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove"/>

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" tools:node="remove"/>

</manifest>

 

(3)也有一种情况是使用的三方库未限制最低支持得anroid版本,这种情况下会自动申请READ_PHONE_STATE这一敏感权限。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值