Android動態獲取權限許可簡易模板

在這裏插入圖片描述

直接複製版

 if (Build.VERSION.SDK_INT >= 23){
            int REQUEST_CODE_CONTACT = 101;   
            String[] permissions = {Manifest.permission.RECEIVE_SMS,Manifest.permission.WRITE_EXTERNAL_STORAGE};
            for (String str : permissions){
                if (ContextCompat.checkSelfPermission(this,str) != PackageManager.PERMISSION_GRANTED){
                    ActivityCompat.requestPermissions(this, permissions, REQUEST_CODE_CONTACT);
                }
            }
        }

解釋版

//檢查安卓版本
 if (Build.VERSION.SDK_INT >= 23){
            int REQUEST_CODE_CONTACT = 101;     //設置請求碼
            String[] permissions = {Manifest.permission.RECEIVE_SMS,Manifest.permission.WRITE_EXTERNAL_STORAGE};  //將需要的權限填入這裏
            //挨個請求權限
            for (String str : permissions){
                if (ContextCompat.checkSelfPermission(this, str) != PackageManager.PERMISSION_GRANTED){
                    ActivityCompat.requestPermissions(this, permissions, REQUEST_CODE_CONTACT);
                }
            }
        }

注意上面請求多少權限,在AndroidManifest.xml中寫入多少權限。

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.monitor">
    
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
//EasyPermissions版模板
String PERMISSION_STORAGE_MSG = "請授予權限,否則影響部分使用功能";
int REQUEST_CODE_CONTACT = 101;
String[] perms = {Manifest.permission.RECEIVE_SMS};
if (!EasyPermissions.hasPermissions(this, perms)) {
    EasyPermissions.requestPermissions(this, PERMISSION_STORAGE_MSG , REQUEST_CODE_CONTACT, perms);
}

詳細內容

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章