安卓权限

manifest中权限注明形式

<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

检测是否拥有权限

public boolean hasPermission(String permission){
        return PackageManager.PERMISSION_GRANTED 
                == checkSelfPermission(permission);
    }

申请权限

String[] permissions;
int requestCode;
requestPermissions(permissions, 0)

响应用户操作结果

public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        switch (requestCode) {
            case 0: {  
                if (grantResults.length > 0
                        && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                    Toast.makeText(getActivity(), "已获取权限,可以保存图片", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(getActivity(), "您拒绝了写文件权限,无法保存图片", Toast.LENGTH_SHORT).show();
                }
                return;
            }
        }
    }
posted @ 2019-12-22 14:07  心流flux  阅读(117)  评论(0)    收藏  举报