Open Mattefarax opened 3 months ago
Same problem here, any solution?
Isn't it the same problem as here: #1149 ? @Mattefarax What version of MultiPlatformBleAdapter you have?
@luca-tomasetti I installed the 0.2.0 using the pods file, and doesn't work. Then I tried to change various version of the library, like the documentation said, but doesn't work. Are there any other method to install it?
@luca-tomasetti I installed the 0.2.0 using the pods file, and doesn't work. Then I tried to change various version of the library, like the documentation said, but doesn't work. Are there any other method to install it?
@Mattefarax not that I know... Can you share your podfile where you set the MultiPlatformBleAdapter ?
@luca-tomasetti pod 'MultiplatformBleAdapter', :git => 'https://github.com/dotintent/MultiPlatformBleAdapter', :tag => '0.2.0'
this is the line on my pod file, then I launch the pod update command and successfully installed the library, but doesn't work. Im using the react-native-ble-plx library version "3.2.1"
I'm using the same...
What OS version you have for your iPhone? I can try to check if I have some hardware with the same version and test it...
I encountered the same issue. Not all devices return null for ManufactureData. Out of 200 devices, I was able to retrieve ManufactureData from only 40, whereas on Android, all 200 devices provided ManufactureData.
I encountered the same issue. Not all devices return null for ManufactureData. Out of 200 devices, I was able to retrieve ManufactureData from only 40, whereas on Android, all 200 devices provided ManufactureData.
Weird... Is there any consistency with the devices ? Like OS Version, model, year, ...
After decoding the manufacturer data and converting the first two bytes to the actual company names using the information from "https://bitbucket.org/bluetooth-SIG/public/raw/HEAD/assigned_numbers/company_identifiers/company_identifiers.yaml". I found that the additional devices detected by Android are mostly Apple devices. This suggests that the iOS SDK cannot capture Apple devices, whereas Android can.
Did some tests with a third-party app (eBeacon) and there the beacon's manufacturer data is visible, may it be not related to the SDK? Strangely enough on that app only beacons from Apple (0x004C) are detected. Don't know if that's a setting or something else.
@GioIacca9 I couldn't find the Manufacturer Data in your snapshot. In iOS,there are two frameworks used for communicating with Bluetooth devices: CoreBluetooth and CoreLocation. CoreLocation is used to detect nearby beacon devices, so it can discover Bluetooth devices, but it cannot retrieve Manufacturer Data from them. The CLBeacon class only provides uuid, major, minor, proximity, accuracy, and rssi attributes. You can find more details here:https://developer.apple.com/documentation/corelocation/clbeacon.
On the other hand, CoreBluetooth allows you to directly process Bluetooth data packets, including Manufacturer Data.
@mircotom thank you for the explanation. I thought that Major and Minor values were included in the manufacturer data, my goal is to get those numbers. On android I semply base64-decode the manufacturer data and get the 25-26 bytes for the major value and 27-28 bytes for the minor value, but if there's another way to obtain those two vlaues I'm ok with that.
When you use the startDeviceScan() function, what are you setting in the allowDuplicates option field?
This is my startDeviceScan function:
bleManager.startDeviceScan(null, null, (error, device)
Can you check what happen if you set the option allowDuplicates=true?
bleManager.startDeviceScan(null, {allowDuplicates: true}, (error, device)
Didn't change. Manufacturer Data is null.
Didn't change. Manufacturer Data is null.
I'm assuming manufacturedData is null even if you set allowDuplicates to false...
Exactly, I changed to false and manufacturedData is already null
Hi @tom501, do I need to change some configuration modes on Xcode application to let the library works correctly?
@Mattefarax I have a similar configuration...
Prerequisites
Expected Behavior
I need to reed the manufacturerData of my device, on Android I can read it normally, on iOS manufacturerData return null.
Current Behavior
I need to reed the manufacturerData of my device, on Android I can read it normally, on iOS manufacturerData return null.
Library version
3.2.1
Device
iPhone 15
Environment info
Steps to reproduce
Only installing library and add the Multiplatform adapter, then after setting all the permission and add this code line.
Formatted code sample or link to a repository
Relevant log output
Additional information
No response