SingleTask与android.intent.action.MAIN的坑
项目首次封板内测期间用户反馈了一个问题,无论打开多少页面,将应用推至后台再启动就回到了主页。在内测期间才发现这么严重的问题,开发和测试都吓了一跳,庆幸这次内测只在公司范围内。
排查这个问题的时候,有点懵。项目是ReactNative架构的,原生为RN提供了清除Activity栈的方法,所以误以为是RN的错误调用导致了这个问题。断点调试发现没有走清栈的方法,一下失去了线索。对比了同类产品的代码没有发现异样,最终采用了二分commit记录的方式定位问题,然后发现了下面这段代码:
<activity
android:name=".MainActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" /></