您好,登錄后才能下訂單哦!
Android開發(fā)中如何實現(xiàn)獲取動態(tài)權限?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Android系統(tǒng)對所有的危險權限進行了分組,稱為 權限組 。屬于同一組的危險權限將自動合并授予,用戶授予應用某個權限組的權限,則應用將獲得該權限組下的所有權限(前提是相關權限在 AndroidManifest.xml 中有聲明)。
危險權限 和 權限組 列表如下: 在 AndroidManifest.xml 聲明過的危險權限對應的權限組可以在系統(tǒng) “設置” -> “應用” -> “應用信息” -> “權限” 中查看,可以手動授權和取消授權。
1、設備系統(tǒng)是 Android 6.0 (API 23) 或更高版本,并且應用的 targetSdkVersion 是 23 或更高版本,則針對在 AndroidManifest.xml 中聲明的危險權限,在運行時還需要動態(tài)請求用戶授權。
2、動態(tài)權限請求相關操作的API封裝在在android.support.v4包中,發(fā)起請求權限的Activity需要直接或間接繼承android.support.v4.app.FragmentActivity。
3、 也可以在直接或間接繼承 android.support.v4.app.Fragment 的 Fragment 中發(fā)起權限請求。
首先在清單文件中注冊
然后在MainActivity.java中將權限封裝到一個String數(shù)組中
static final String[] PERMISSION = new String[]{ Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.RECORD_AUDIO, Manifest.permission.RECEIVE_BOOT_COMPLETED };
然后在onCreate()方法中加入一下代碼:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) { //Android 6.0申請權限 ActivityCompat.requestPermissions(this, PERMISSION, 1); } else { Toast.makeText(this, "成功", Toast.LENGTH_SHORT).show(); }
關于Android開發(fā)中如何實現(xiàn)獲取動態(tài)權限問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業(yè)資訊頻道了解更多相關知識。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。