好吧,我的问题就像标题一样简单:
有没有办法在应用程序内的所有正在运行的活动上调用 finish() ?
所以我需要一种方法来完全关闭我的应用程序。
好吧,我的问题就像标题一样简单:
有没有办法在应用程序内的所有正在运行的活动上调用 finish() ?
所以我需要一种方法来完全关闭我的应用程序。
您可以使用 BroadCastReceiver 来实现:
在每项活动中:
private BroadcastReceiver mLoggedOutReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
finish();
}
};
在 onCreate 中注册接收者:
registerReceiver(mLoggedOutReceiver, new IntentFilter(Preferences.INTENT_ACTION_LOGGED_OUT));
在 onDestroy 上:
@Override
public void onDestroy() {
super.onDestroy();
unregisterReceiver(mLoggedOutReceiver);
}
在每个活动和以下过滤器的清单上:
<intent-filter>
<action android:name="com.example.intent.action.LOGGED_OUT" />
</intent-filter>
我在 Preference 类中声明了意图 Action,如下所示:
public static final String INTENT_ACTION_LOGGED_OUT = "com.example.intent.action.LOGGED_OUT";//logout
最后,您所要做的就是从退出按钮或其他东西调用 sendBroadcast :
sendBroadcast(new Intent(Preferences.INTENT_ACTION_LOGGED_OUT));//logout
希望这可以帮助。
android.os.Process.killProcess(android.os.Process.myPid());
此代码可以关闭您的应用程序。
NO
但是您可以像这样存在漏洞应用程序,System.exit(0);
但这不是推荐的方式..因为android没有设计退出应用程序。