ActivityResultLauncher всегда возвращает нулевые данные

я использую ActivityResultLauncher с участием ActivityResultContracts.StartIntentSenderForResult контракт в Android 11 для изменения аудиофайлов.

Вот как я это делаю в своем 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, данные пусты

я использую androidx версии 1.4.1

0 ответов