正在運行的android程序,按home鍵之後退回到桌面,在次點擊程序圖標避免再次重新啓動程序解決辦法
例如:一個android程序包含兩個Activity,分別爲MainActivity和OtherActivity,MainActivity爲程序啓動的Activity。如果程序正位於OtherActivity,點擊home鍵,程序退回到桌面,
在次點擊程序圖標,程序默認會自動重啓,即重新進入MainActivity,而不是進入點擊home鍵的時刻程序所位於的OtherActivity。
解決方法:
在AndroidManifest.xml中修改,MainActivity的launchMode,去掉android:launchMode="singleTask"啓動模式即可。
AndroidManifest.xml的配置代碼
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN" />
<categoryandroid:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".OtherActivity"
android:label="@string/title_activity_other"android:launchMode="singleTask">
</activity>
</application>
如果修改launchMode無效的話,在最先啓動的activity的onCreate()方法裏添加如下代碼即可解決該問題: if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) { finish(); return; }