찾다

 >  Q&A  >  본문

android6.0+多个权限申请问题

单个权限申请比较简单:

//判断当前版本是否大于M
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            //判断当前Activity是否获得了该权限
            if (ContextCompat.checkSelfPermission(activity,
                    Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
                //没有授权,判断权限申请是否曾经被拒绝过
                if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
                    Toast.makeText(activity, "你曾经拒绝过此权限,需要重新获取", Toast.LENGTH_SHORT).show();
                    //进行权限请求
                    ActivityCompat.requestPermissions(activity,
                            new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
                            EXTERNAL_STORAGE_REQ_CODE);
                } else {
                    //进行权限请求
                    ActivityCompat.requestPermissions(activity,
                            new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
                            EXTERNAL_STORAGE_REQ_CODE);
                }
                可是多个权限申请要怎么写?
                判断是否获取改权限的Permission貌似一次只能判断一个,如果在这个地方添加其他权限的判断,系统只会判断一次,然后给出所有权限判断的结果,,,所以,多个权限申请问题该怎么做?
迷茫迷茫2803일 전518

모든 응답(1)나는 대답할 것이다

  • 阿神

    阿神2017-04-17 17:22:04

    복수 권한은 애플리케이션 배열에 여러 개의 새 문자열[]{권한 A, 권한 B}을 입력하는 것을 의미합니다. 여러 권한을 신청하면 거부된 것으로 간주됩니다. 그래서 콜백 장소에서 직접 처리해야 합니다

    으아아아

    권한도 String[] 배열을 통해 하나씩 판단됩니다.

    회신하다
    0
  • 취소회신하다