我有 3 个安卓应用程序。如果用户打开了 app1,则应检查 app2 和/或 app3 是否正在运行,如果是,则终止它们。
这是我尝试过的。
在每个应用程序中实现了一个 BroadcastReceiver()。
mFinishReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.v("intent", "Got Kill Intent, I am " + pn);
if (killAction.equals(intent.getAction())) {
killmePlease(pn, killAction);
}
}
};
registerReceiver(mFinishReceiver, intentFilter);
然后,使用它我尝试杀死应用程序..
private void killmePlease(String pn) {
Intent _killme = new Intent(this, MainActivity.class);
startActivity(_killme);
try {
Log.v("intent", "Finishing " + pn);
setResult(RESULT_OK);
MainActivity.this.finish();
System.exit(0);
Log.v("intent", "Finished");
return;
} catch (Exception ex) {
Log.v("intent", "Error Killing " + ex.getMessage());
}
}
但是,应用程序仍在运行,没有抛出任何错误。谁能告诉我我错过了什么?