我想始终启动一个特定的活动,而不是在关闭申请期间活动的活动。我没有可能在结束前切换到理想的活动,因为它可能已经死了。
我甚至希望从最近的应用程序删除整个程序的快捷方式,而不是让用户对启动信用而不是启动启动屏幕感到困惑。然而,这只是解决方法(但以防万一,我该怎么做?)
答案 0 :(得分:2)
我反编译了一些应用并找到了解决方案:
wCompact hRegular
应用于应用程序中所有活动的关联名称,但与其自己的taskAffinity属性设置不同关联的活动除外。有关详细信息,请参阅该属性。
默认情况下,应用程序中的所有活动共享相同的关联。该关联的名称与
<android:name="..." android:taskAffinity=":shortcut" android:excludeFromRecents="true" android:clearTaskOnLaunch="true" ...
元素设置的包名称相同。
答案 1 :(得分:1)
您可以通过android:excludeFromRecents="true"
属性标记所有活动。这样可以确保您的所有活动都不会显示在“最近的应用程序”列表中。
答案 2 :(得分:1)
如果您的意思是希望每次都通过相同的活动启动应用程序,请添加
android:launchMode="singleTask"
到清单文件中的主要活动。这将强制您的应用程序将此活动放在活动堆栈的底部,清除可能已运行的所有其他活动。
答案 3 :(得分:0)
解决此问题的正确方法是添加
android:noHistory="true"
所有活动的清单条目除主(根)Activity
以外的其他活动。
当用户从最近任务列表或按HOME页面上的应用程序图标返回应用程序时,所有活动(主(根)Activity
除外)将从任务(实际上,当用户通过按HOME按钮导航离开应用程序,接听来电,从通知栏中选择其他应用程序等时,它们会立即被删除