Skip to content

Commit 36c6fc9

Browse files
committed
support exit for ActivityManager
1 parent c5e84c7 commit 36c6fc9

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

updatepluginlib/src/main/java/org/lzh/framework/updatepluginlib/impl/DefaultDownloadNotifier.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,7 @@
1818
import android.app.Activity;
1919
import android.app.AlertDialog;
2020
import android.app.ProgressDialog;
21-
import android.content.Context;
2221
import android.content.DialogInterface;
23-
import android.os.Process;
2422

2523
import org.lzh.framework.updatepluginlib.base.DownloadCallback;
2624
import org.lzh.framework.updatepluginlib.base.DownloadNotifier;
@@ -77,8 +75,7 @@ private void createRestartDialog() {
7775
@Override
7876
public void onClick(DialogInterface dialog, int which) {
7977
if (update.isForced()) {
80-
System.exit(0);
81-
Process.killProcess(Process.myPid());
78+
ActivityManager.get().exit();
8279
} else {
8380
dialog.dismiss();
8481
}

updatepluginlib/src/main/java/org/lzh/framework/updatepluginlib/util/ActivityManager.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import android.app.Application;
2020
import android.content.Context;
2121
import android.os.Bundle;
22+
import android.os.Process;
2223

2324
import java.util.LinkedList;
2425

@@ -92,4 +93,14 @@ void registerSelf(Context context) {
9293
this.applicationContext = context.getApplicationContext();
9394
}
9495

96+
public void exit() {
97+
Activity activity;
98+
while ((activity = stack.pop()) != null) {
99+
if (!activity.isFinishing()) {
100+
activity.finish();
101+
}
102+
}
103+
System.exit(0);
104+
Process.killProcess(Process.myPid());
105+
}
95106
}

0 commit comments

Comments
 (0)