我们退出程序的时候一般使用finish activity,但是有时候发现程序并未真正的退出,而是直接跳转到后台。因为finish 只是结束了activity可并未结束整个进程,这个时候加上system。exit(0)就能退出了。
注意事项: 使用system。exit(0)时,经常会遇到几个问题,比如应用退出后重启问题,因为直接调用这个是非法的,android os以为是意外关闭程序(比如内存不足),android os底层有监听服务,app被意外终止会自动重启。
所以在调用system。exit的时候要先释放资源,关闭文件。public void exit() {
[代码]java代码:
?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 | try {
DebugUtil.d("test","---activity finish belong");
for (Activity activity : mActList) {
if (activity != null)
activity.finish();
}
DebugUtil.d("test","---activity finish after");
DbManager db = MyDbManager.getInstance(application).getDb();
if (db != null)
db.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
DebugUtil.d("test","---system.exit()");
System.exit(0);
}
}
|
可以这样
原文链接:http://www.apkbus.com/blog-329331-60813.html
打开App,阅读手记