Android завершает дочернюю активность из родительской Activity при использовании Activity Result API

Я не могу найти способ завершить дочернее действие из родительского действия с помощью нового API результатов деятельности.

Раньше мы могли делать startActivityForResult(intent, childId) а затем вызовите из родительского Activity, чтобы завершить дочернее Activity.

              val childIntent = Intent(this, ChildActivity::class.java)
        startActivityForResult(childIntent, CHILD_ACTIVITY_REQUEST_CODE)

        Handler(Looper.getMainLooper()).postDelayed({
            // Finish the child activity after 5 seconds
            finishActivity(CHILD_ACTIVITY_REQUEST_CODE)
        }, 5000)

Но когда activityResultLauncher.launch(childIntent) мы не можем передать код запроса childId, поэтому мы не можем использовать finishActivity(childId)

              val childIntent = Intent(this, ChildActivity::class.java)
        activityResultLauncher.launch(childIntent)
        Handler(Looper.getMainLooper()).postDelayed({
            // Since I don't have a request code, this doesn't work!
            finishActivity(CHILD_ACTIVITY_REQUEST_CODE)
        }, 5000)

Можно ли завершить дочернее действие из родительского действия с помощью API результатов деятельности?

Спасибо

Вот пример проекта, который иллюстрирует проблему. https://github.com/4brunu/ActivityResultAPIFinishChildActivity

0 ответов

Другие вопросы по тегам