我的应用有两个活动,ActivityA和ActivityB。它们在AndroidManifest下面指定:
<activity android:name=".ActivityA" android:label="@string/app_name" android:screenOrientation="landscape"
android:configChanges="orientation|keyboardHidden|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ActivityB"
android:screenOrientation="landscape" android:configChanges="orientation|keyboardHidden|screenSize"
android:windowSoftInputMode="stateAlwaysHidden"/>
问题的情景如下。
我在第5步非常困惑。我期望的是,应用程序将通过其现有任务堆栈(即任务堆栈中仅有ActivityB)处于前台。为什么Android会在第5步启动ActivityA?
顺便说一句,客户端日志包含以下步骤5中的消息:
10-26 21:29:04.070 V / HtcAppUsageStats(275):(启动应用程序,包):( MyApp,com.example.myapp)
10-26 21:29:04.070 I / ActivityManager(275):开始活动:意图{act = android.intent.action.MAIN cat = [android.intent.category.LAUNCHER] flg = 0x34500000 cmp = com。 example.myapp / .ActivityA bnds = [0,566] [540,662](有额外内容)}来自pid 275
感谢您的任何建议!
答案 0 :(得分:1)
答案 1 :(得分:0)
好的,所以如果你想在长按主页按钮上显示一个活动:
以intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent);
在该活动的机密清单android:excludeFromRecents="true"
您也可以关注此link 这应该可以解决你的问题!!!