AndroidregisterForActivityResult启动时没有提示权限请求
创始人
2024-10-09 18:01:51
0

在registerForActivityResult方法中使用ActivityResultLauncher对象时,应该先提前请求权限,并在权限被授予时才启动ActivityResultLauncher的launch方法。以下是示例代码:

// 在Activity中定义权限请求代码 private static final int REQUEST_CODE_PERMISSIONS = 100;

// 在Activity中定义需要请求的权限 private final String[] REQUIRED_PERMISSIONS = new String[]{ Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE };

// 在Activity中定义ActivityResultLauncher对象 private final ActivityResultLauncher photoLauncher = registerForActivityResult( new ActivityResultContracts.StartActivityForResult(), result -> { // 处理ActivityResult返回的结果 } );

// 在Activity中定义权限请求Launcher对象 private final ActivityResultLauncher permissionLauncher = registerForActivityResult( new ActivityResultContracts.RequestMultiplePermissions(), permissions -> { if (permissions.containsValue(false)) { // 权限被拒绝 } else { // 权限被授予,启动photoLauncher的launch方法 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); photoLauncher.launch(intent); } } );

// 在需要启动photoLauncher的地方调用以下方法,先请求权限 if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED && ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) { // 权限已经被授予,直接启动photoLauncher的launch方法 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); photoLauncher.launch(intent); } else { // 权限还没被授予,请求权限 permissionLauncher.launch(REQUIRED_PERMISSIONS); }

相关内容

热门资讯

3分钟绝活!wepokerpl... 3分钟绝活!wepokerplus外开挂(透视)好像有辅助开挂(哔哩哔哩)该软件可以轻松地帮助玩家将...
4分钟资料!wepoker免费... 您好,wepoker免费脚本弱密码这款游戏可以开挂的,确实是有挂的,需要了解加去威信【4852750...
第7分钟积累!hhpoker哪... 第7分钟积累!hhpoker哪个俱乐部靠谱(透视)确实真的有辅助透视(哔哩哔哩)1、hhpoker哪...
第6分钟举措!wepoker私... 第6分钟举措!wepoker私人局怎么玩(透视)一贯存在有辅助插件(哔哩哔哩)一、wepoker私人...
第2分钟操作!wepoker免... 第2分钟操作!wepoker免费透视脚本(透视)原来存在有辅助下载(哔哩哔哩)1、起透看视 wepo...
第9分钟法门!we-poker... 第9分钟法门!we-poker辅助器(透视)切实真的有辅助神器(哔哩哔哩)1、让任何用户在无需we-...
四分钟积累!wepoker辅助... 四分钟积累!wepoker辅助器激活码(透视)一直是真的有辅助脚本(哔哩哔哩)1、实时wepoker...
第6分钟手册!智星德州辅助译码... 第6分钟手册!智星德州辅助译码插件靠谱吗(透视)总是是真的有辅助透视(哔哩哔哩)1、进入到智星德州辅...
第一分钟绝活儿!hhpoker... 第一分钟绝活儿!hhpoker软件靠谱吗(透视)切实真的有辅助工具(哔哩哔哩)1、首先打开hhpok...
第六分钟操作!德州局hhpok... 第六分钟操作!德州局hhpoker(透视)竟然真的是有辅助脚本(哔哩哔哩)1)德州局hhpoker有...