android:noHistory和android:finishOnTaskLaunch之间的关系

kol*_*vra 9 android android-manifest android-activity

这两个属性如何相关?如果我有android:noHistory="true",是否android:finishOnTaskLaunch="true"有任何意义/意义?

Rac*_*lan 26

假设您的应用程序中有三个活动:A,B和C.您启动应用程序并查看A,单击按钮并查看B,单击按钮并查看C.

第一种情况

现在,如果按手机上的"后退"按钮,您将看到B.

第二种情况

让我们说B有android:noHistory="true".现在,如果按手机上的"后退"按钮,您将看到A.该android:noHistory="true"属性从历史记录(即活动堆栈)中删除了B,因此当您点击"返回"按钮时,您将看不到它.

第三种情况

让我们说C有android:finishOnTaskLaunch="true".现在,如果您按手机上的"主页"按钮,然后再次启动应用程序,您将看到B. Android再次启动应用程序时结束了C,因为它具有该android:finishOnTaskLaunch="true"属性.


小智 6

finishOnTaskLaunchActivity当你转移到另一个任务时会杀死它。但如果您转到同一任务中的另一个活动,noHistory则会杀死该任务。Activity