繁体   English   中英

ActivityResultLauncher 总是返回 null 数据

[英]ActivityResultLauncher always returns null data

我在 android 11 中使用ActivityResultLauncherActivityResultContracts.StartIntentSenderForResult合约来修改音频文件。

这是我在MainActivity中的操作方式:

  1. 我使用MediaStore创建一个返回PendingIntent的写入请求,然后我调用#getIntentSender()来获取IntentSender

    IntentSender sender = MediaStore.createWriteRequest(getContentResolver(), uris).getIntentSender();

  2. 然后我创建一个IntentSenderRequest并将其设置为 fillIn Intent ,如下所示:

    Intent fillIn = new Intent().putExtras(bundle);

    IntentSenderRequest senderRequest = new IntentSenderRequest.Builder(sender).setFillInIntent(fillIn).build();

  3. 然后我像下面这样调用我的启动器:

    myLauncher.launch(senderRequest);

我的结果启动器是这样的:

final ActivityResultLauncher<IntentSenderRequest> myLauncher = 
registerForActivityResult( new ActivityResultContracts.StartIntentSenderForResult(),
            result -> {
                //result.getData() is always null
            }

但每次我调用myLauncher时,数据都是 null

我正在使用 androidx 版本 1.4.1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM