Merge "Add reason log for OPS killing launcher connection" into tm-qpr-dev am: 1e9105e947

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22202549

Change-Id: I176be3d6d0812477154f864981eaec64a9a1f5dc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
TreeHugger Robot
2023-03-23 21:33:31 +00:00
committed by Automerger Merge Worker

View File

@@ -140,7 +140,8 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
private final Handler mHandler;
private final Lazy<NavigationBarController> mNavBarControllerLazy;
private final NotificationShadeWindowController mStatusBarWinController;
private final Runnable mConnectionRunnable = this::internalConnectToCurrentUser;
private final Runnable mConnectionRunnable = () ->
internalConnectToCurrentUser("runnable: startConnectionToCurrentUser");
private final ComponentName mRecentsComponentName;
private final List<OverviewProxyListener> mConnectionCallbacks = new ArrayList<>();
private final Intent mQuickStepIntent;
@@ -406,7 +407,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
// Failed to link to death (process may have died between binding and connecting),
// just unbind the service for now and retry again
Log.e(TAG_OPS, "Lost connection to launcher service", e);
disconnectFromLauncherService();
disconnectFromLauncherService("Lost connection to launcher service");
retryConnectionWithBackoff();
return;
}
@@ -501,7 +502,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
@Override
public void onUserChanged(int newUser, @NonNull Context userContext) {
mConnectionBackoffAttempts = 0;
internalConnectToCurrentUser();
internalConnectToCurrentUser("User changed");
}
};
@@ -716,12 +717,12 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
if (mHandler.getLooper() != Looper.myLooper()) {
mHandler.post(mConnectionRunnable);
} else {
internalConnectToCurrentUser();
internalConnectToCurrentUser("startConnectionToCurrentUser");
}
}
private void internalConnectToCurrentUser() {
disconnectFromLauncherService();
private void internalConnectToCurrentUser(String reason) {
disconnectFromLauncherService(reason);
// If user has not setup yet or already connected, do not try to connect
if (!isEnabled()) {
@@ -783,7 +784,9 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
return mOverviewProxy;
}
private void disconnectFromLauncherService() {
private void disconnectFromLauncherService(String disconnectReason) {
Log.d(TAG_OPS, "disconnectFromLauncherService bound?: " + mBound +
" currentProxy: " + mOverviewProxy + " disconnectReason: " + disconnectReason);
if (mBound) {
// Always unbind the service (ie. if called through onNullBinding or onBindingDied)
mContext.unbindService(mOverviewServiceConnection);
@@ -1047,6 +1050,6 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis
mContext.unregisterReceiver(mLauncherStateChangedReceiver);
mIsEnabled = false;
mHandler.removeCallbacks(mConnectionRunnable);
disconnectFromLauncherService();
disconnectFromLauncherService("Shutdown for test");
}
}