如何知道某项活动是否已经开始

时间:2012-11-23 18:29:29

标签: android

我在一个应用程序中工作,我在屏幕打开或关闭的情况下进行过滤,并在屏幕打开时启动活动,但有时它启动活动但活动已经启动,我想问你是否如果活动已经启动,我可以通过任何方式了解我的应用程序。

当我开始活动时,我添加了此代码

intent11.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

非常感谢你。

3 个答案:

答案 0 :(得分:2)

我认为您可以使用活动生命周期设置变量

class IAMActivity extends Activity {
    static boolean isStart = false;

  public void onStart() {
     super.onStart();
     isStart = true;
  } 
  public void onStop() {
     super.onStop();
     isStart = false;
   }
 }

答案 1 :(得分:1)

以下是您要找的内容:

 class MyActivity extends Activity {
 static boolean alreadyLaunched = false;

  @Override
  public void onStart() {
     super.onStart();
     alreadyLaunched = true;
  } 

  @Override
  public void onStop() {
     super.onStop();
     alreadyLaunched = false;
  }
}

答案 2 :(得分:0)

如果您想将活动限制为一个实例,可以将清单文件中的launchMode设置为singleTasksingleInstance,具体取决于您的要求。

<activity
     android:launchMode="singleTask"
     ...>
...
</activity>

使用singleTask通过onNewIntent()代替onCreate()传递新意图。

有关详细信息,请参阅<activity>