早上好,我正在研究android中activity的启动模式。
我正在开发一个应用程序,其中应该只有一个活动(A)的实例,如果有更多的活动实例,它可能会导致应用程序的执行错误,调查一下我达到了这一点找到这两种活动启动模式
android:launchMode="singleTask" y android:launchMode="singleInstance"
在 Play 商店中,我发现了这个应用程序,它显示了 android https://play.google.com/store/apps/details?id=com.novoda.demos.activitylaunchmode 的活动类型如何启动在两种模式下启动这些活动似乎做同样的事情,我不想在选择开始我的活动时出错,我希望你能帮助我确定两种启动模式之间的区别,因为我不明白官方文档中的资料很好,先谢谢了
官方文档: https ://developer.android.com/guide/topics/manifest/activity-element.html?hl=es-419
要了解差异,您可以在文档中查看“singleTask”和“singleInstance”模式的用途:
活动 android:launchMode
对于定义为“singleInstance”的活动,它不允许其他活动成为其任务的一部分。它是任务中的唯一活动。如果启动另一个活动,则该活动将分配给不同的任务,就好像它
FLAG_ACTIVITY_NEW_TASK
是在Intent
.因此区别在于:
“singleTask”和“singleInstance”模式仅在一个方面彼此不同:“singleTask”活动允许其他活动成为其任务的一部分,而“singleInstance”则不允许。