Removed references to IActivityController from AMS (31/n)
IActivityController should only be accessed from the ATMS side since
it relates to activties. This CL makes it so.
Bug: 80414790
Test: Existing tests pass
Change-Id: Ifcbab0499d3f00d83e8a76503e5a6f703792f274
diff --git a/services/core/java/com/android/server/am/ActivityTaskManagerService.java b/services/core/java/com/android/server/am/ActivityTaskManagerService.java
index 02707fb..2dac28c 100644
--- a/services/core/java/com/android/server/am/ActivityTaskManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityTaskManagerService.java
@@ -397,7 +397,7 @@
// VoiceInteractionManagerService
ComponentName mActiveVoiceInteractionServiceComponent;
- private VrController mVrController;
+ VrController mVrController;
KeyguardController mKeyguardController;
private final ClientLifecycleManager mLifecycleManager;
private TaskChangeNotificationController mTaskChangeNotificationController;
@@ -4355,10 +4355,6 @@
mRecentTasks.notifyTaskPersisterLocked(task, flush);
}
- void onTopProcChangedLocked(WindowProcessController proc) {
- mVrController.onTopProcChangedLocked(proc);
- }
-
boolean isKeyguardLocked() {
return mKeyguardController.isKeyguardLocked();
}
@@ -6689,5 +6685,28 @@
mPendingTempWhitelist.remove(uid);
}
}
+
+ @Override
+ public boolean handleAppCrashInActivityController(String processName, int pid,
+ String shortMsg, String longMsg, long timeMillis, String stackTrace,
+ Runnable killCrashingAppCallback) {
+ synchronized (mGlobalLock) {
+ if (mController == null) {
+ return false;
+ }
+
+ try {
+ if (!mController.appCrashed(processName, pid, shortMsg, longMsg, timeMillis,
+ stackTrace)) {
+ killCrashingAppCallback.run();
+ return true;
+ }
+ } catch (RemoteException e) {
+ mController = null;
+ Watchdog.getInstance().setActivityController(null);
+ }
+ return false;
+ }
+ }
}
}