鍍金池/ 問答/Android  HTML/ 安卓如何限制依賴的包的權(quán)限?

安卓如何限制依賴的包的權(quán)限?

我現(xiàn)在自己的app,只開了很少的權(quán)限,因?yàn)橛貌坏健?br>但是依賴的一個(gè)第三方包,開了一些我用不到的權(quán)限,比如地理位置的權(quán)限。
能不能在我的代碼里進(jìn)行改動(dòng),而不碰第三方包的代碼,來達(dá)到禁用地理位置的權(quán)限的目的?

我的App里AndroidManifest.xml關(guān)于權(quán)限的部分:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.CAMERA"/>

可以看到只開了3個(gè)權(quán)限,但是開app的時(shí)候總要提示是否授予地理位置權(quán)限,我就很納悶,于是查了代碼,發(fā)現(xiàn)依賴的一個(gè)包里的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" />

所以我可不可以只改自己的代碼,來禁用掉一些不必要的權(quán)限。
不改第三方包的代碼是因?yàn)榈谌桨辉趃it的管理下,哪一天重新安裝依賴又得手動(dòng)改。

回答
編輯回答
忠妾

聲明你要取消的權(quán)限,并加入 tools:node="remove" 試試

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

參考:https://developer.android.com...

2017年12月23日 07:33
編輯回答
憶當(dāng)年

清單文件里面不給定位權(quán)限就行了啊

2017年5月20日 20:44
編輯回答
有你在

請(qǐng)?jiān)囈幌逻@個(gè)https://github.com/oasisfeng/...

2017年12月23日 20:02