[AM] Skip unnessary ANR when process already died.

When app process been killed by AMS or lowmemkiller just before ANR report,
because process record info has been cleared after received death recipient,
it also cannot dump trace log because process already dead,
so report ANR & show ANR UI to let user wait seems is unnecessary.
(compare normal ANR case, if kill app process by command,
ANR dialog will also dismissed, it seems reasonable.)

To check above condition, if ANR process record killed set as true,
it means process already dead & can skip report this ANR.

Change-Id: I483cb02bacb10c32db80ca1097310b02abbac24d
This commit is contained in:
Mark Lu
2016-03-23 19:08:44 +08:00
parent 05884ac869
commit 41d65f28c2

View File

@@ -756,6 +756,9 @@ class AppErrors {
} else if (app.killedByAm) {
Slog.i(TAG, "App already killed by AM skipping ANR: " + app + " " + annotation);
return;
} else if (app.killed) {
Slog.i(TAG, "Skipping died app ANR: " + app + " " + annotation);
return;
}
// In case we come through here for the same app before completing