android如何检查我的应用程序是否仍在运行
我想创建一个处理程序或什么来检查应用程序是否仍在运行,比如android如何检查我的应用程序是否仍在运行,android,Android,我想创建一个处理程序或什么来检查应用程序是否仍在运行,比如 while(appIsRunning) { //do something } do somthimg 使用“ActivityLifecycleCallbacks”并按以下方式使用: public class MyApplication extends Application { @Override public void onCreate (){ super.onCreate();
while(appIsRunning)
{
//do something
}
do somthimg
使用“ActivityLifecycleCallbacks”并按以下方式使用:
public class MyApplication extends Application {
@Override
public void onCreate (){
super.onCreate();
registerActivityLifecycleCallbacks(new MyActivityLifecycleCallbacks());
}
@Override
public void onTerminate (){
super.onTerminate();
}
@Override
public void onConfigurationChanged (Configuration newConfig){
super.onConfigurationChanged(newConfig);
}
private static final class MyActivityLifecycleCallbacks implements ActivityLifecycleCallbacks {
public void onActivityCreated(Activity activity, Bundle bundle) {
Log.e("","onActivityCreated:" + activity.getLocalClassName());
}
public void onActivityDestroyed(Activity activity) {
Log.e("","onActivityDestroyed:" + activity.getLocalClassName());
}
public void onActivityPaused(Activity activity) {
Log.e("","onActivityPaused:" + activity.getLocalClassName());
}
public void onActivityResumed(Activity activity) {
Log.e("","onActivityResumed:" + activity.getLocalClassName());
}
public void onActivitySaveInstanceState(Activity activity,
Bundle outState) {
Log.e("","onActivitySaveInstanceState:" + activity.getLocalClassName());
}
public void onActivityStarted(Activity activity) {
Log.e("","onActivityStarted:" + activity.getLocalClassName());
}
public void onActivityStopped(Activity activity) {
Log.e("","onActivityStopped:" + activity.getLocalClassName());
}
}
}
这样,您可以检查每个状态并执行任何操作…试试这个
public static boolean isAppRunning(Context context)
{
ActivityManager activityManager = (ActivityManager) context
.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> appProcesses = activityManager
.getRunningAppProcesses();
for (RunningAppProcessInfo appProcess : appProcesses)
{
if (appProcess.processName.equals(context.getPackageName()))
{
if (appProcess.importance != RunningAppProcessInfo.IMPORTANCE_PERCEPTIBLE)
{
return true;
}
}
}
return false;
}
publicstaticbooleaninsapprunning(上下文)
{
ActivityManager ActivityManager=(ActivityManager)上下文
.getSystemService(Context.ACTIVITY\u服务);
列表AppProcess=activityManager
.getRunningAppProcesses();
for(运行AppProcessInfo appProcess:AppProcesss)
{
if(appProcess.processName.equals(context.getPackageName()))
{
if(appProcess.importance!=运行appprocessinfo.importance\u可感知)
{
返回true;
}
}
}
返回false;
}
检查此链接将解决您的问题。此应用程序是否正在检查另一个应用程序是否正在运行?否,我需要检查当前应用程序是否仍在运行opened@Amalo你应该更具体地说明你想要实现什么,问题出在哪里,你必须检查你的应用程序是否正在“运行”(你可以编辑你的帖子来添加信息)如果某些代码正在运行,那是因为你的应用程序正在运行,我不知道你所说的“如何检查我的应用程序是否仍在运行”是什么意思这与检查应用程序是否正在运行有什么关系?@Hacketo你能帮我一下,而不是否决答案吗D@KiranChoudhary原始答案与问题无关,编辑是此问题的复制/粘贴,没有任何解释