相关疑难解决方法(0)

如何使用 Jetpack Compose 处理 Activity.onActivityResult()?

我正在尝试使用 Jetpack Compose 在我的 Android 应用程序中实现登录提示,但此 API 需要一个Activity才能工作。

fun showPhoneNumberHint(activity: Activity) {
    val hintRequest: HintRequest = HintRequest.Builder()
        .setPhoneNumberIdentifierSupported(true)
        .build()

    val intent = Auth.CredentialsApi.getHintPickerIntent(apiClient, hintRequest)
    val requestCode = 12345

    try {
        startIntentSenderForResult(activity, intent.intentSender, requestCode, null, 0, 0, 0, null)
    } catch (exception: SendIntentException) {
        // Error handling
    }
}
Run Code Online (Sandbox Code Playgroud)

所以我想我必须将 Activity 对象一直传递到需要它的 Composable ,这看起来不是很干净,但它应该可以工作。

但是现在提示的结果将在 Activity 中收到onActivityResult(),我不确定将它返回到需要它的 Composable 的正确方法是什么。

有没有一些干净/标准/替代的方法来做到这一点?最好我只是将所有这些逻辑包含在 Composable 中。

android kotlin android-jetpack android-jetpack-compose

2
推荐指数
2
解决办法
950
查看次数