我的应用中有2个启动器活动和2种模式。 当启动Activity_A应用程序开始在mode_A中工作,而Activity_B启动mode_B时。 应用程序只能在给定时间以一种模式运行。 onCreate()
中的Activity_A和Activity_B init需要模式我有下一个糟糕的情况:
我希望在步骤3中从堆栈中清除Activity_A,它将无法恢复 在第5步。 我怎么能做到这一点?
清单中的活动:
<activity
android:name="Activity_A"
android:launchMode="singleTask"
android:taskAffinity="Affinity_A">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity
android:name="Activity_B"
android:launchMode="singleTask"
android:taskAffinity="Affinity_B" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
另外我尝试使用android:clearTaskOnLaunch和android:finishOnTaskLaunch没有结果:(
答案 0 :(得分:0)
我无法理解mode_A或mode_B。
但从您的问题标题来看,您应该尝试this question 主要是说:
在活动A中
声明类似public static Activity a;
在onCreate中实例化a = this;
在活动B中
Activity_A.a.finsh();
如果在按下后退出应用程序,则可以覆盖onBackPressed()并从那里启动Activity。