Android 動態申請權限


現在Android手機權限越來越嚴了,需要用戶主動申請權限。

Android 用戶主動申請權限如下代碼:

1、請求權限

private void requestPermission() {

        if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.M){
            if (ContextCompat.checkSelfPermission(GarbargeCleanActivity.this,Manifest.permission.DELETE_CACHE_FILES)!= PackageManager.PERMISSION_GRANTED){
                //沒有權限則申請權限
                ActivityCompat.requestPermissions(GarbargeCleanActivity.this,new String[]{Manifest.permission.DELETE_CACHE_FILES},REQUEST_CODE);

            }else {
                //有權限直接執行,docode()不用做處理
                clearAllCache();
            }

        }else {
            //小於6.0,不用申請權限,直接執行
            clearAllCache();
        }
    }

2、在Activity中添加  onRequestPermissionsResult 方法 ,如下:

   @Override
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
        if (requestCode == REQUEST_CODE){
            if (permissions[0].equals(Manifest.permission.DELETE_CACHE_FILES)
                    &&grantResults[0] == PackageManager.PERMISSION_GRANTED){
                //用戶同意使用write
                clearAllCache();
            }else{
                //用戶不同意,自行處理即可
                //

            }
        }
    }
    private static final int REQUEST_CODE = 1;

3、AndroidManifest.xml 文件中添加對應權限

  <uses-permission
        android:name="android.permission.DELETE_CACHE_FILES"
        tools:ignore="ProtectedPermissions" />

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM