Android 动态获取权限

原创
2016/07/11 11:11
阅读数 187

在Android6.0设备上 ,遇到一些需要权限的操作,需要在程序中动态的去检查响应的权限是否被许可。

否则可能出现程序意外停止等问题。

 

int checkCallPhonePermission = ContextCompat.checkSelfPermission(mContext,Manifest.permission.CALL_PHONE);

            if(checkCallPhonePermission != PackageManager.PERMISSION_GRANTED){

     ActivityCompat.requestPermissions(mContext,new String[]{Manifest.permission.CALL_PHONE},REQUEST_CODE_ASK_CALL_PHONE);return;

            }else{

                //上面已经写好的拨号方法

                callDirectly(mobile);

            }

 

 

通过覆盖方法实现回调监听

@Override

public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {

        switch (requestCode) {

        case REQUEST_CODE_ASK_CALL_PHONE:

        if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {

        // Permission Granted

        callDirectly(mobile);

        else {// Permission Denied

        Toast.makeText(MainActivity.this"CALL_PHONE Denied", Toast.LENGTH_SHORT)

                            .show();

                }

                break;

            default:

                super.onRequestPermissionsResult(requestCode, permissions, grantResults);

        }

    }

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部