溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android開發(fā)中如何實現(xiàn)獲取動態(tài)權限

發(fā)布時間:2020-11-19 14:47:29 來源:億速云 閱讀:731 作者:Leah 欄目:開發(fā)技術

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è)資訊頻道了解更多相關知識。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI