Android 6.0 multiple permissions

后端 未结 22 2222
太阳男子
太阳男子 2020-11-22 03:58

I know that Android 6.0 has new permissions and I know I can call them with something like this

if (ContextCompat.checkSelfPermission(this, Manifest.permiss         


        
22条回答
  •  萌比男神i
    2020-11-22 04:37

    Small code :

     public static final int MULTIPLE_PERMISSIONS = 10; // code you want.
    
     String[] permissions= new String[]{
            Manifest.permission.WRITE_EXTERNAL_STORAGE,
            Manifest.permission.CAMERA,
            Manifest.permission.ACCESS_COARSE_LOCATION,
            Manifest.permission.ACCESS_FINE_LOCATION};
    
    
    if (checkPermissions())
             //  permissions  granted.    
    }
    
    private  boolean checkPermissions() {
            int result;
            List listPermissionsNeeded = new ArrayList<>();
            for (String p:permissions) {
                result = ContextCompat.checkSelfPermission(getActivity(),p);
                if (result != PackageManager.PERMISSION_GRANTED) {
                    listPermissionsNeeded.add(p);
                }
            }
            if (!listPermissionsNeeded.isEmpty()) {
                ActivityCompat.requestPermissions(this, listPermissionsNeeded.toArray(new String[listPermissionsNeeded.size()]),MULTIPLE_PERMISSIONS );
                return false;
            }
            return true;
        }
    
    
       @Override
        public void onRequestPermissionsResult(int requestCode, String permissionsList[], int[] grantResults) {
            switch (requestCode) {
                case MULTIPLE_PERMISSIONS:{
                    if (grantResults.length > 0) {
                    String permissionsDenied = "";
                    for (String per : permissionsList) {
                        if(grantResults[0] == PackageManager.PERMISSION_DENIED){
                            permissionsDenied += "\n" + per;
    
                        } 
    
                    }
                    // Show permissionsDenied 
                    updateViews();
                }
                    return;
                }
            }
         }
    

    List of Android permissions normal permissions and dangerous permissions in API 23

提交回复
热议问题