Loading services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +9 −0 Original line number Diff line number Diff line Loading @@ -294,6 +294,15 @@ public class CompanionDeviceManagerService extends SystemService { private boolean onCompanionApplicationBindingDiedInternal( @UserIdInt int userId, @NonNull String packageName) { // Update the current connected devices sets when binderDied, so that application is able // to call notifyDeviceAppeared after re-launch the application. for (AssociationInfo ai : mAssociationStore.getAssociationsForPackage(userId, packageName)) { int id = ai.getId(); Slog.i(TAG, "Removing association id: " + id + " for package: " + packageName + " due to binderDied."); mDevicePresenceMonitor.removeDeviceFromMonitoring(id); } // TODO(b/218613015): implement. return false; } Loading services/companion/java/com/android/server/companion/presence/CompanionDevicePresenceMonitor.java +10 −3 Original line number Diff line number Diff line Loading @@ -205,6 +205,15 @@ public class CompanionDevicePresenceMonitor implements AssociationStore.OnChange mCallback.onDeviceDisappeared(goneDeviceAssociationId); } /** * Remove the current connected devices by associationId. */ public void removeDeviceFromMonitoring(int associationId) { mConnectedBtDevices.remove(associationId); mNearbyBleDevices.remove(associationId); mReportedSelfManagedDevices.remove(associationId); } /** * Implements * {@link AssociationStore.OnChangeListener#onAssociationRemoved(AssociationInfo)} Loading @@ -217,9 +226,7 @@ public class CompanionDevicePresenceMonitor implements AssociationStore.OnChange Log.d(TAG, " > association=" + association); } mConnectedBtDevices.remove(id); mNearbyBleDevices.remove(id); mReportedSelfManagedDevices.remove(id); removeDeviceFromMonitoring(id); // Do NOT call mCallback.onDeviceDisappeared()! // CompanionDeviceManagerService will know that the association is removed, and will do Loading Loading
services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +9 −0 Original line number Diff line number Diff line Loading @@ -294,6 +294,15 @@ public class CompanionDeviceManagerService extends SystemService { private boolean onCompanionApplicationBindingDiedInternal( @UserIdInt int userId, @NonNull String packageName) { // Update the current connected devices sets when binderDied, so that application is able // to call notifyDeviceAppeared after re-launch the application. for (AssociationInfo ai : mAssociationStore.getAssociationsForPackage(userId, packageName)) { int id = ai.getId(); Slog.i(TAG, "Removing association id: " + id + " for package: " + packageName + " due to binderDied."); mDevicePresenceMonitor.removeDeviceFromMonitoring(id); } // TODO(b/218613015): implement. return false; } Loading
services/companion/java/com/android/server/companion/presence/CompanionDevicePresenceMonitor.java +10 −3 Original line number Diff line number Diff line Loading @@ -205,6 +205,15 @@ public class CompanionDevicePresenceMonitor implements AssociationStore.OnChange mCallback.onDeviceDisappeared(goneDeviceAssociationId); } /** * Remove the current connected devices by associationId. */ public void removeDeviceFromMonitoring(int associationId) { mConnectedBtDevices.remove(associationId); mNearbyBleDevices.remove(associationId); mReportedSelfManagedDevices.remove(associationId); } /** * Implements * {@link AssociationStore.OnChangeListener#onAssociationRemoved(AssociationInfo)} Loading @@ -217,9 +226,7 @@ public class CompanionDevicePresenceMonitor implements AssociationStore.OnChange Log.d(TAG, " > association=" + association); } mConnectedBtDevices.remove(id); mNearbyBleDevices.remove(id); mReportedSelfManagedDevices.remove(id); removeDeviceFromMonitoring(id); // Do NOT call mCallback.onDeviceDisappeared()! // CompanionDeviceManagerService will know that the association is removed, and will do Loading