我现在自己的app,只开了很少的权限,因为用不到。
但是依赖的一个第三方包,开了一些我用不到的权限,比如地理位置的权限。
能不能在我的代码里进行改动,而不碰第三方包的代码,来达到禁用地理位置的权限的目的?
我的App里AndroidManifest.xml
关于权限的部分:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.CAMERA"/>
可以看到只开了3个权限,但是开app的时候总要提示是否授予地理位置权限,我就很纳闷,于是查了代码,发现依赖的一个包里的AndroidManifest.xml
有:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
所以我可不可以只改自己的代码,来禁用掉一些不必要的权限。
不改第三方包的代码是因为第三方包不在git的管理下,哪一天重新安装依赖又得手动改。
声明你要取消的权限,并加入
tools:node="remove"
试试参考:https://developer.android.com...