diff --git a/CHANGELOG.md b/CHANGELOG.md index 2688b03..6d91ceb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.16.0 * Bump bluez to 0.8.3 * Improve readme +* Do not normalize UUIDs on native side * Reverse _permissionStatus return values in example app ## 0.15.0 diff --git a/android/src/main/kotlin/com/navideck/universal_ble/UniversalBleHelper.kt b/android/src/main/kotlin/com/navideck/universal_ble/UniversalBleHelper.kt index 265bd78..806387c 100644 --- a/android/src/main/kotlin/com/navideck/universal_ble/UniversalBleHelper.kt +++ b/android/src/main/kotlin/com/navideck/universal_ble/UniversalBleHelper.kt @@ -73,16 +73,8 @@ fun Int.toBleConnectionState(): BleConnectionState { } } -fun String.validFullUUID(): String { - return when (this.count()) { - 4 -> "0000$this-0000-1000-8000-00805F9B34FB" - 8 -> "$this-0000-1000-8000-00805F9B34FB" - else -> this - } -} - fun List.toUUIDList(): List { - return this.map { UUID.fromString(it.validFullUUID()) } + return this.map { UUID.fromString(it) } } diff --git a/darwin/Classes/UniversalBleHelper.swift b/darwin/Classes/UniversalBleHelper.swift index 3b6cb8f..6eb35f4 100644 --- a/darwin/Classes/UniversalBleHelper.swift +++ b/darwin/Classes/UniversalBleHelper.swift @@ -143,20 +143,6 @@ public extension CBPeripheral { } } -extension String { - var validFullUUID: String { - let uuidLength = count - if uuidLength == 4 || uuidLength == 8 { - let baseUuid = "00000000-0000-1000-8000-00805F9B34FB" - let start = baseUuid.startIndex - let range = baseUuid.index(start, offsetBy: 4 - uuidLength) ..< baseUuid.index(start, offsetBy: 4) - return baseUuid.replacingCharacters(in: range, with: self).lowercased() - } else { - return self - } - } -} - extension FlutterStandardTypedData { func toData() -> Data { return Data(data) diff --git a/darwin/Classes/UniversalBlePlugin.swift b/darwin/Classes/UniversalBlePlugin.swift index f23e7b2..29ab8a5 100644 --- a/darwin/Classes/UniversalBlePlugin.swift +++ b/darwin/Classes/UniversalBlePlugin.swift @@ -348,7 +348,7 @@ private class BleCentralDarwin: NSObject, UniversalBlePlatformChannel, CBCentral isPaired: nil, rssi: RSSI as? Int64, manufacturerDataList: manufacturerDataList, - services: services?.map { $0.uuidStr.validFullUUID } + services: services?.map { $0.uuidStr } )) { _ in } } @@ -492,7 +492,7 @@ extension String { extension [String] { func toCBUUID() throws -> [CBUUID] { return try compactMap { serviceUUID in - guard UUID(uuidString: serviceUUID.validFullUUID) != nil else { + guard UUID(uuidString: serviceUUID) != nil else { throw PigeonError(code: "IllegalArgument", message: "Invalid service UUID:\(serviceUUID)", details: nil) } return CBUUID(string: serviceUUID)