Loading core/java/android/companion/ICompanionDeviceDiscoveryService.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -28,4 +28,6 @@ oneway interface ICompanionDeviceDiscoveryService { in String callingPackage, in IFindDeviceCallback findCallback, in AndroidFuture<String> serviceCallback); void onAssociationCreated(); } packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java +7 −1 Original line number Diff line number Diff line Loading @@ -254,8 +254,14 @@ public class CompanionDeviceActivity extends Activity { Log.i(LOG_TAG, "onDeviceConfirmed(selectedDevice = " + selectedDevice + ")"); getService().onDeviceSelected( getCallingPackage(), getDeviceMacAddress(selectedDevice.device)); } void setResultAndFinish() { Log.i(LOG_TAG, "setResultAndFinish(selectedDevice = " + getService().mSelectedDevice.device + ")"); setResult(RESULT_OK, new Intent().putExtra(CompanionDeviceManager.EXTRA_DEVICE, selectedDevice.device)); new Intent().putExtra( CompanionDeviceManager.EXTRA_DEVICE, getService().mSelectedDevice.device)); finish(); } Loading packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceDiscoveryService.java +10 −0 Original line number Diff line number Diff line Loading @@ -116,6 +116,11 @@ public class CompanionDeviceDiscoveryService extends Service { CompanionDeviceDiscoveryService::startDiscovery, CompanionDeviceDiscoveryService.this, request)); } @Override public void onAssociationCreated() { Handler.getMain().post(CompanionDeviceDiscoveryService.this::onAssociationCreated); } }; private ScanCallback mBLEScanCallback; Loading Loading @@ -221,6 +226,11 @@ public class CompanionDeviceDiscoveryService extends Service { SCAN_TIMEOUT); } @MainThread private void onAssociationCreated() { mActivity.setResultAndFinish(); } private boolean shouldScan(List<? extends DeviceFilter> mediumSpecificFilters) { return !isEmpty(mediumSpecificFilters) || isEmpty(mFilters); } Loading services/companion/java/com/android/server/companion/AssociationRequestsProcessor.java +3 −0 Original line number Diff line number Diff line Loading @@ -154,6 +154,9 @@ class AssociationRequestsProcessor { if (err == null) { mService.createAssociationInternal( userId, deviceAddress, callingPackage, deviceProfile); mServiceConnectors.forUser(userId).post(service -> { service.onAssociationCreated(); }); } else { Slog.e(TAG, "Failed to discover device(s)", err); callback.onFailure("No devices found: " + err.getMessage()); Loading Loading
core/java/android/companion/ICompanionDeviceDiscoveryService.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -28,4 +28,6 @@ oneway interface ICompanionDeviceDiscoveryService { in String callingPackage, in IFindDeviceCallback findCallback, in AndroidFuture<String> serviceCallback); void onAssociationCreated(); }
packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java +7 −1 Original line number Diff line number Diff line Loading @@ -254,8 +254,14 @@ public class CompanionDeviceActivity extends Activity { Log.i(LOG_TAG, "onDeviceConfirmed(selectedDevice = " + selectedDevice + ")"); getService().onDeviceSelected( getCallingPackage(), getDeviceMacAddress(selectedDevice.device)); } void setResultAndFinish() { Log.i(LOG_TAG, "setResultAndFinish(selectedDevice = " + getService().mSelectedDevice.device + ")"); setResult(RESULT_OK, new Intent().putExtra(CompanionDeviceManager.EXTRA_DEVICE, selectedDevice.device)); new Intent().putExtra( CompanionDeviceManager.EXTRA_DEVICE, getService().mSelectedDevice.device)); finish(); } Loading
packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceDiscoveryService.java +10 −0 Original line number Diff line number Diff line Loading @@ -116,6 +116,11 @@ public class CompanionDeviceDiscoveryService extends Service { CompanionDeviceDiscoveryService::startDiscovery, CompanionDeviceDiscoveryService.this, request)); } @Override public void onAssociationCreated() { Handler.getMain().post(CompanionDeviceDiscoveryService.this::onAssociationCreated); } }; private ScanCallback mBLEScanCallback; Loading Loading @@ -221,6 +226,11 @@ public class CompanionDeviceDiscoveryService extends Service { SCAN_TIMEOUT); } @MainThread private void onAssociationCreated() { mActivity.setResultAndFinish(); } private boolean shouldScan(List<? extends DeviceFilter> mediumSpecificFilters) { return !isEmpty(mediumSpecificFilters) || isEmpty(mFilters); } Loading
services/companion/java/com/android/server/companion/AssociationRequestsProcessor.java +3 −0 Original line number Diff line number Diff line Loading @@ -154,6 +154,9 @@ class AssociationRequestsProcessor { if (err == null) { mService.createAssociationInternal( userId, deviceAddress, callingPackage, deviceProfile); mServiceConnectors.forUser(userId).post(service -> { service.onAssociationCreated(); }); } else { Slog.e(TAG, "Failed to discover device(s)", err); callback.onFailure("No devices found: " + err.getMessage()); Loading