You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native Android 11+点击推送通知致APP重载问题求助

Android 11+点击通知重载App的原因分析

1. Activity启动模式配置错误

Android 11+收紧了后台启动Activity的规则,你的MainActivity如果启动模式配置不对,就会触发App重载:

  • 要是设成standard,每次点通知都会新建Activity实例,看起来就是App重载;
  • 就算设了singleTask,但没在onNewIntent里处理通知的Intent,系统还是可能重新创建Activity。
  • 另外RN 0.68+要求Activity必须加android:exported="true",没加的话系统处理通知启动时会出异常,间接导致重启。

2. react-native-notification的PendingIntent配置问题

你用的^5.1.0版本可能在Android 11+上有兼容性问题:

  • 后台状态下,通知的PendingIntent没设置正确的标志,比如缺了FLAG_UPDATE_CURRENT或者FLAG_IMMUTABLE(Android 12+必须用这俩之一),导致Intent无法复用,只能启动新的App实例;
  • 库本身的Intent传递逻辑有问题,没把通知数据传给后台的App实例,反而触发了全新启动。

3. RN 0.72.7的生命周期适配缺失

RN 0.72基于Android 13 SDK,要是MainActivity没重写onNewIntent方法来接收通知Intent,系统会默认重新初始化App:

  • 默认的RN MainActivity没处理这个方法,后台的App实例接不到通知的Intent,系统就会认为需要重建App来处理。

4. 推送Payload数据异常

如果通知带的payload数据太大,或者包含Android 11+限制的敏感内容,系统传递Intent时会出问题,进而导致App重启来处理错误数据。


内容的提问来源于stack exchange,提问作者Pulasthi Aberathne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 03:06:04