diff --git a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java index edbfd2a8f03eb..a5168ccd977ce 100644 --- a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java +++ b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java @@ -78,6 +78,7 @@ public class CompanionDeviceActivity extends Activity { getWindow().addSystemFlags(SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS); sInstance = this; + getService().mActivity = this; String deviceProfile = getRequest().getDeviceProfile(); String profilePrivacyDisclaimer = emptyIfNull(getRequest() @@ -141,8 +142,6 @@ public class CompanionDeviceActivity extends Activity { profileSummary.setVisibility(View.GONE); } - getService().mActivity = this; - mCancelButton = findViewById(R.id.button_cancel); mCancelButton.setOnClickListener(v -> cancel()); } @@ -194,6 +193,7 @@ public class CompanionDeviceActivity extends Activity { @Override protected void onDestroy() { super.onDestroy(); + getService().mActivity = null; if (sInstance == this) { sInstance = null; } diff --git a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceDiscoveryService.java b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceDiscoveryService.java index 5df8e3c83a7af..2a72c501d7d0c 100644 --- a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceDiscoveryService.java +++ b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceDiscoveryService.java @@ -258,12 +258,8 @@ public class CompanionDeviceDiscoveryService extends Service { if (!mIsScanning) return; mIsScanning = false; - CompanionDeviceActivity activity = mActivity; - if (activity != null) { - if (activity.mDeviceListView != null) { - activity.mDeviceListView.removeFooterView(activity.mLoadingIndicator); - } - mActivity = null; + if (mActivity != null && mActivity.mDeviceListView != null) { + mActivity.mDeviceListView.removeFooterView(mActivity.mLoadingIndicator); } mBluetoothAdapter.cancelDiscovery(); @@ -337,6 +333,7 @@ public class CompanionDeviceDiscoveryService extends Service { void onCancel() { if (DEBUG) Log.i(LOG_TAG, "onCancel()"); + mActivity = null; mServiceCallback.cancel(true); }