私はブルートゥースを介して教室に出席を確認するためのアプリを作成しています。これまでのところうまく動作し、私はMacBook、iPad、Apple TVでテストしています。 「エドゥアルドのiPad、Apple TV、エドゥアルドのMacbook」などの名前が付けられています。 問題は昨日私がモールで試したことです。私が持っているのは、「無名」のデバイスがたくさんあることです。それは教室でも問題になるでしょう。iOS向けBLEを使用してBluetoothを介して検出されたデバイスを特定する方法
私もIDを取得していますが、私はiOS版やAndroidデバイス上でそのIDを特定する方法がわからない、これは私がスキャンしたときに私が取得するオブジェクトの一種である:
{
id: "2BD5D5A7-EF50-B4F4-D4FD-9A8413006D4B",
rssi: -24,
advertising: {
kCBAdvDataIsConnectable: true
},
name: "Eduardo's iPad"
}
記譜してください私がここにいるIDは2BD5D5A7-EF50-B4F4-D4FD-9A8413006D4B
ですが、私が設定/一般/約/ Bluetoothに私のiPadに行く場合、そこに示されたIDはF0:D1:A9:E3:F9:E9
です。
だから、長いIDから短いIDをどうにか取得できますか?または、iOSやAndroidでロングIDを取得する方法はありますか?前もって感謝します。
識別子をデバイスのMACにマップする方法はありません。識別子は、周辺機器を識別するためにCore Bluetoothによって作成された値ですが、識別子の導出方法は文書化されていません。私の経験では、同じiCloudアカウントを持つデバイスの名前を取得する傾向があります。これは、iOSがハンドオフなどのデバイスをペアにして動作させるためです。また、iOS(とAndroidの場合もある)がMACランダム化機能を備えているため、デバイスを追跡しようとする試みを無効にするという挑戦もあります。 – Paulw11