1

场景:
当按下按钮然后退出应用程序时,我的应用程序会切换 wifi 状态。如果在禁用 wifi 时启用了后台数据,则应用程序允许用户通过启动 Sync Settings 活动 startActivity(new Intent(Settings.ACTION_SYNC_SETTINGS)) 来禁用 bg 数据;
这很好用,除了当用户通过按下主页按钮从同步设置活动返回主屏幕时,应用程序在重新打开时仍将显示同步设置,而不是主要活动。

我该怎么做才能在我的应用程序打开时从主要活动开始,无论它以何种方式或在何处关闭?

4

2 回答 2

1

您应该使用 no history 标志。您想要的是使用“无历史记录”标志开始所有活动。所以当APP关闭并再次从主页按钮返回时,所有活动(除了主要活动)都被销毁

因此,假设您的主要活动要开始活动 A

Class ourClass = Class.forName("ActivityA");    
Intent ourIntent = new Intent(this, ourClass);  
ourIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);//This is the flag I am talking about
startActivity(ourIntent);
于 2012-08-18T23:33:13.203 回答
-1

在除主要 add-> 之外的每个活动中

     @Override
 public void onPause() {
         finish();
     super.onPause();

 }

现在,当您的应用在任何活动上暂停时,它将完成它。这也意味着当从一项活动转到下一项活动时,您将无法按返回按钮返回一项活动,它始终会将您带到主要活动。

于 2012-08-18T22:52:56.313 回答