'startActivityForResult(android.content.Intent, int)' is deprecated
时间: 2024-03-23 15:14:54 浏览: 39
Android startActivityForResult实例详解
这个警告表示你正在使用已经被弃用的方法 `startActivityForResult()`。这个方法在 Android 10 (API level 29) 中已经被弃用。建议你使用新的方法 `registerForActivityResult()` 来代替。
使用 `registerForActivityResult()` 的步骤如下:
1. 在 Activity 中定义一个 ActivityResultLauncher 对象。
```java
private ActivityResultLauncher<Intent> mLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(),
result -> {
if (result.getResultCode() == Activity.RESULT_OK) {
// 处理返回结果
}
});
```
2. 在需要启动 Activity 的地方,使用 `mLauncher.launch()` 方法启动。
```java
Intent intent = new Intent(this, SecondActivity.class);
mLauncher.launch(intent);
```
这样就可以替代原来的 `startActivityForResult()` 方法了。
阅读全文