Merge "Adding bt dependency"
diff --git a/nearby/service/java/com/android/server/nearby/fastpair/FastPairManager.java b/nearby/service/java/com/android/server/nearby/fastpair/FastPairManager.java
index 253e942..41b6da7 100644
--- a/nearby/service/java/com/android/server/nearby/fastpair/FastPairManager.java
+++ b/nearby/service/java/com/android/server/nearby/fastpair/FastPairManager.java
@@ -29,7 +29,6 @@
 import android.nearby.NearbyDevice;
 import android.nearby.NearbyManager;
 import android.nearby.ScanCallback;
-import android.nearby.ScanRequest;
 import android.util.Log;
 
 import androidx.annotation.NonNull;
@@ -51,8 +50,8 @@
 import com.android.server.nearby.fastpair.footprint.FootprintsDeviceManager;
 import com.android.server.nearby.fastpair.halfsheet.FastPairHalfSheetManager;
 import com.android.server.nearby.fastpair.pairinghandler.PairingProgressHandlerBase;
+import com.android.server.nearby.provider.FastPairDataProvider;
 import com.android.server.nearby.util.FastPairDecoder;
-import com.android.server.nearby.util.ForegroundThread;
 import com.android.server.nearby.util.Hex;
 
 import com.google.protobuf.ByteString;
@@ -101,11 +100,12 @@
                 Log.d("FastPairService", " the nearby manager is " + nearbyManager);
 
                 if (nearbyManager != null) {
-                    nearbyManager.startScan(
-                            new ScanRequest.Builder()
-                                    .setScanType(ScanRequest.SCAN_TYPE_FAST_PAIR).build(),
-                            ForegroundThread.getExecutor(),
-                            mScanCallback);
+                    // Uncomment this if you want to get mainline half sheet
+//                    nearbyManager.startScan(
+//                            new ScanRequest.Builder()
+//                                    .setScanType(ScanRequest.SCAN_TYPE_FAST_PAIR).build(),
+//                            ForegroundThread.getExecutor(),
+//                            mScanCallback);
                 } else {
                     Log.d("FastPairService", " the nearby manager is null");
                 }
@@ -114,9 +114,12 @@
                 byte[] model = intent.getByteArrayExtra(EXTRA_MODEL_ID);
                 String address = intent.getStringExtra(EXTRA_ADDRESS);
                 Log.d("FastPairService", "start pair " + address);
+                Rpcs.GetObservedDeviceResponse response =
+                        FastPairDataProvider.getInstance().loadFastPairDeviceMetadata(model);
+                ByteString publicKey = response.getDevice().getAntiSpoofingKeyPair().getPublicKey();
                 Locator.get(mLocatorContextWrapper, FastPairHalfSheetManager.class).showHalfSheet(
                         Cache.ScanFastPairStoreItem.newBuilder().setAddress(address)
-                                .setAntiSpoofingPublicKey(ByteString.EMPTY)
+                                .setAntiSpoofingPublicKey(publicKey)
                                 .build());
             } else {
                 Log.d("FastPairService", " screen off");