如果默认安装程序从sd安装应用程序并按下打开按钮将打开应用程序。按下主页按钮并单击图标(在启动器上)应用程序将重新启动。需要从内存中杀死应用程序并从启动器上的图标开始以获得正常行为。
步骤:
1.创建简单的应用程序
2.加载到sd
3.从安装人员安装并打开
4.改变任何行为
5.按下主页按钮
6.在发射器上按下图标应用程序
7.应用重启!
如果从内存中杀死app并在启动器上按图标运行,行为是正常的。 它是如何解决的?
答案 0 :(得分:2)
我使用onCreate()
方法中的以下代码解决了这个问题:
if (!isTaskRoot()) {
final Intent intent = getIntent();
final String intentAction = intent.getAction();
if (intent.hasCategory(Intent.CATEGORY_LAUNCHER) &&
intentAction != null && intentAction.equals(Intent.ACTION_MAIN)) {
finish();
}
}
与其他提议的解决方案相反,这不需要声明"android.permission.GET_TASKS"
答案 1 :(得分:2)
请检查Android Manifest中的活动标志android:launchMode。尝试删除它并检查。