summaryrefslogtreecommitdiff
path: root/framework/java/android/bluetooth/BluetoothUuid.java
diff options
context:
space:
mode:
authorRuina Liu <ruina.liu@mediatek.com>2017-07-22 18:41:48 +0800
committerTing Zheng <ting.zheng@mediatek.com>2017-09-15 17:08:32 -0700
commit3bff59e26dd2e7c8dfc4c4bbf83c4a623b3b72d6 (patch)
treef27863cedf513e1b1f49c3ecfbc287bd94dfc5dc /framework/java/android/bluetooth/BluetoothUuid.java
parent6209c2052f3b879b118f55864660b87a36bb1f5d (diff)
Fix extracting 32-bit uuid error via calling method uuidToBytes
A new defined method of uuidToBytes is used to convert Bluetooth uuid to bytes in the case of BLE advertising. But the most significant 16 bits of a 32-bit uuid will be cleared after the and operations with 0X0000FFFF00000000L in the function of getServiceIdentifierFromParcelUuid. 0XFFFFFFFF00000000L should be used as bit mask. Change-Id: I83e22ffbecd718540e644289fee12bf9c3b66305 Test: Advertise with payload contains 32-bit uuid
Diffstat (limited to 'framework/java/android/bluetooth/BluetoothUuid.java')
-rw-r--r--framework/java/android/bluetooth/BluetoothUuid.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/framework/java/android/bluetooth/BluetoothUuid.java b/framework/java/android/bluetooth/BluetoothUuid.java
index 5bfc54d267..76cb3f5b54 100644
--- a/framework/java/android/bluetooth/BluetoothUuid.java
+++ b/framework/java/android/bluetooth/BluetoothUuid.java
@@ -232,7 +232,7 @@ public final class BluetoothUuid {
*/
public static int getServiceIdentifierFromParcelUuid(ParcelUuid parcelUuid) {
UUID uuid = parcelUuid.getUuid();
- long value = (uuid.getMostSignificantBits() & 0x0000FFFF00000000L) >>> 32;
+ long value = (uuid.getMostSignificantBits() & 0xFFFFFFFF00000000L) >>> 32;
return (int) value;
}