对于Android,我们有一个非常肮脏的解决方法 - 不要问,客户 - 在主要活动中基本上这样工作。调用quitApp()
时,活动堆栈将被清除,应用程序将完全退出。
public void quitApp() {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("EXIT", true);
startActivity(intent);
}
@Override
public void onResume() {
super.onResume();
if (getIntent().getBooleanExtra("EXIT", false)) {
finish();
}
}
我们现在已经为BlackBerry 10打包了这个应用程序,其他一切运行正常,除了这段代码。调用quitApp()
时会发生的事情是活动刷新(有时它会转到应用程序“曝光”之间),但无论如何应用程序都会停留在屏幕上。
还有其他解决办法强行退出为BB10打包的Android应用程序吗?
答案 0 :(得分:1)
System.exit(1);
会为你做。
这是一个系统挂钩:http://docs.oracle.com/javase/1.5.0/docs/guide/lang/hook-design.html
在这里讨论:When should we call System.exit in Java
以下是Android文档:http://developer.android.com/reference/java/lang/System.html#exit(int)
为什么你不应该在Android中使用System.Exit:Is quitting an application frowned upon?