很多时候,生活不是你做了想做的事,而是你不得不做的事,逆愿使人成长。
理想效果和使用场景:安装混淆签名的apk,启动app,点击到某页面,点Home键。再点击app图标,回到之前的页面,然而,再点击图标,会重新启动app。
解决办法:
1. App的启动Activity的启动模式不能使用 launchMode="singleTask",推荐使用standard;
—— 设置之后,通过studio直接build打包,或者不混淆打包,可以达到效果;
混淆签名打包,无效;
(一脸懵x......)
2. 设置启动Activity和主页Activity如下:
android:alwaysRetainTaskState="true" android:clearTaskOnLaunch="false"
—— 安装app,点击完成,达到效果;
安装app,点击打开(即从Installer直接打开),无效;
安装app,点击打开(即从Installer直接打开),杀掉app,点击图标启动app,达到效果;
从其他应用启动app,无效;
(继续懵x......)
3. 在启动Activity的onCreate方法中添加以下代码:
if (!isTaskRoot()) { finish(); return; }
—— 以上场景均有效。其他坑,待踩。