onNewIntent()
是Android Activity生命周期中的一个回调方法,当Activity的实例被系统重新创建时(例如由于配置更改,如屏幕旋转,或者由于系统内存不足导致系统销毁并重新创建Activity),这个方法会被调用。onNewIntent()
方法提供了在Activity实例被重新创建后,处理新的Intent的机会。
以下是onNewIntent()
方法的基本用法:
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
// 在这里处理新的Intent
}
在这个方法中,你可以执行任何需要的操作,以响应新的Intent。例如,你可以更新UI以反映新的数据,或者启动一个新的Fragment来处理Intent中的数据。
需要注意的是,onNewIntent()
方法通常与onSaveInstanceState()
和onRestoreInstanceState()
方法一起使用,以确保在Activity实例被销毁并重新创建后,UI状态和数据能够正确地恢复。
此外,如果你的Activity支持多窗口模式(Multi-Window Mode),并且你的应用目标API级别是26(Android 8.0)或更高版本,那么onNewIntent()
方法可能不会在Activity实例被重新创建时被调用。在这种情况下,你应该使用onNewIntent()
方法的替代方法,如registerForActivityResult()
,来处理新的Intent。