onActivityResult是Android开发中的一个方法,用于在一个Activity返回结果给另一个Activity时,接收返回的结果数据。它已经在Android API level 28中被标记为过时。
作为onActivityResult的替代方案,可以使用新的Activity Result API。该API是在AndroidX库中提供的,可以在兼容Android 11及更高版本的设备上使用。
使用Activity Result API的步骤如下:
implementation 'androidx.activity:activity-ktx:1.4.0'
implementation 'androidx.fragment:fragment-ktx:1.4.0'
val resultLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
if (result.resultCode == Activity.RESULT_OK) {
val data: Intent? = result.data
// 处理返回的结果数据
}
}
val intent = Intent(this, AnotherActivity::class.java)
resultLauncher.launch(intent)
val resultIntent = Intent()
resultIntent.putExtra("key", value)
setResult(Activity.RESULT_OK, resultIntent)
finish()
使用Activity Result API的优势是:
Activity Result API的应用场景包括但不限于:
腾讯云提供的与Activity Result API相关的产品包括云函数 SCF(Serverless Cloud Function)和云存储 COS(Cloud Object Storage)等。您可以通过以下链接了解更多关于这些产品的信息:
领取专属 10元无门槛券
手把手带您无忧上云