我正在开发一款Android应用并开展活动。我在我的活动中编写了一个代码,它将在从服务器获得响应后启动一个新活动,即使在我按下我的活动按钮后,此代码也会执行。
所以,我想检查一下,如果我当前的活动不再活动,那么代码就不应该运行。
如何检查该活动是否已停止运行或已存在。
如果有人知道怎么做,请帮助我。
非常感谢先进。
答案 0 :(得分:0)
点击此处:Proper way to know whether an Activity has been destroyed
问题有你的答案,因为提供的解决方案只是使用SharedPrefrence来存储变量。
答案 1 :(得分:0)
活动仍然在内存中,这就是为什么执行代码以在启动另一个活动后完成完成调用finish()
的原因。
要检查当前活动是否存在,您必须覆盖每次活动完全销毁时调用的onDestroy()
方法。
要检查活动是否正在运行,请按照此question
答案 2 :(得分:0)
在您开始新的finish()
时调用Activity
方法
像
Intent intent = new Intent(this, NextActivity.class);
startActivity(intent);
finish();//this activity has been finish and the code will not execute
您可以检查Activity
是否被销毁。
覆盖此方法
public void onDestroy() {
super.onDestroy();
Log.d("Activity name,"destroyed");
}
答案 3 :(得分:0)
试试这个
class MyActivity extends Activity {
static boolean isActive = false;
@Override
public void onStart() {
super.onStart();
isActive = true;
}
@Override
public void onStop() {
super.onStop();
isActive = false;
}
}