如何知道我的 android 应用程序在接收器中 运行?
How to know my android app is running in the receiver?
我试着写了一些代码来获取短信,当短信来自特殊号码时做一些事情。我为我的应用程序定义了一个接收器,然后我使用下面的代码来确定应用程序是否 运行ning 继续,否则显示通知。
ActivityManager activityManager = (ActivityManager) context.getSystemService(Activity.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses();
for(int i = 0; i < procInfos.size(); i++){
if(procInfos.get(i).processName.equals(app)){
// set running
appState.isRunning = true;
break;
}
}
我用模拟器测试了这段代码,它总是 return 正确。我在 DDMS 中跟踪我的应用程序,发现当我发送短信时应用程序开始发送到 运行 但没有 UI.
我该怎么做?
您的应用程序 automatically created 在其接收者可以 运行 之前(否则它会 运行 在哪里?)。
如果你想检查你的应用程序中是否有任何 activity,没有 API 可以做到这一点,但你可以有一个在 onCreate
中增加的计数器并在 onDestroy
.
中减少
我试着写了一些代码来获取短信,当短信来自特殊号码时做一些事情。我为我的应用程序定义了一个接收器,然后我使用下面的代码来确定应用程序是否 运行ning 继续,否则显示通知。
ActivityManager activityManager = (ActivityManager) context.getSystemService(Activity.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses();
for(int i = 0; i < procInfos.size(); i++){
if(procInfos.get(i).processName.equals(app)){
// set running
appState.isRunning = true;
break;
}
}
我用模拟器测试了这段代码,它总是 return 正确。我在 DDMS 中跟踪我的应用程序,发现当我发送短信时应用程序开始发送到 运行 但没有 UI.
我该怎么做?
您的应用程序 automatically created 在其接收者可以 运行 之前(否则它会 运行 在哪里?)。
如果你想检查你的应用程序中是否有任何 activity,没有 API 可以做到这一点,但你可以有一个在 onCreate
中增加的计数器并在 onDestroy
.