onActivityResult在API 4.4.4中不起作用

时间:2019-04-28 13:18:35

标签: android kotlin android-4.4-kitkat

除API 19外,我的代码在API 28及以下版本中均可正常运行。 主要问题是,当我在具有API 19的设备中运行 onActivityResult 时,不会从代码中的其他活动中调用

min_sdk 17 compile_sdk 和& target_sdk 27 ,因此通过更改它们无法解决问题。

这是第一个活动中的代码:

                food.name = name
                intent.putExtra(Food_Name, burgerNameEtxt.text.toString())
                setResult(Activity.RESULT_OK, intent)
                finish()

这是我应该在另一个活动中接收结果的地方:

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)
    when (requestCode) {

        RequestCode -> {
            when (resultCode) {

                Activity.RESULT_OK -> {
                    var food = getCurrentFood(mMenueItem.id)
                    food.name = data!!.getStringExtra(Food_Name)
                    // doing some thing with data //
                }
            }
        }
    }

}

请求代码 1 >> 常量请求代码= 1 我用 intent 将其发送到第一个活动。任何帮助将不胜感激:)

1 个答案:

答案 0 :(得分:0)

对我来说,这是由于android:launchMode =“ singleTask”而发生的,这对intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)没有帮助。

我通过android:launchMode =“ singleTop”修复了它。