安卓按home键之后,再次点击程序图标避免再次重新启动程序解决办法

本文介绍了一种方法,使得Android应用程序在用户按下Home键后,再次通过应用图标启动时能够回到之前的状态,而不是重新启动到MainActivity。解决方案涉及修改MainActivity的launchMode属性,并提供了一个额外的代码片段来确保此行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

正在运行的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() &amp; Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) { finish(); return; }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值