我期待創建一個跨平臺的應用程序,允許我定期通告設備Mac地址(儘管我已經意識到由於某種原因我收到3個單一設備),以便它可以被記錄並用於參考短手動用戶廣告,使得每個廣告可以由特定用戶識別;然而,似乎我已經陷入了有關ULEID在BLE上的問題瞭解自定義BLE UUID
搜索了一段時間後,我仍然對BLE服務中的UUID有點困惑。最初我決定使用一個自定義的BLE,它反覆無法做出奇怪的錯誤宣告,或者由於數據包很大,即使數據只有一個字節長,也是如此。我意識到UUID的格式必須是xxxxxxxx-0000-1000-8000-00805F9B34FB
。除此之外的任何內容都會發送完整的UUID,當廣告未被連接時這個UUID太大。我還發現,我可以在上半部分使用任何UUID前綴(0000XXXX
),該前綴不在保留範圍0x000E
- 0x01FF
中。
這是一個正確的假設,我可以使用與標準00000200 - 0000FFFF不衝突的任何UUID。我問,因爲我在選擇該範圍內的UUID時似乎遇到了問題,並且據我瞭解,在範圍之外創建自定義UUID是BLE上的一個壞主意,因爲它將被迫使用20-23字節中的16個字節。有關這個的任何輸入?
也是預先定義的方式發送用戶設備的廣告,以便它可以被緩存並用於標識其他用戶廣告?
編輯:
沒有到達該項目需要連接手機的跨平臺與其他設備一起以無連接的方式。最初,我計劃讓設備反覆宣傳它的身份以及可用於唯一標識用戶消息的名稱和唯一MAC地址。任何沒有緩存用戶身份的設備都會簡單地丟棄該用戶的傳入數據包。 - kdgwill 9分鐘前
我實際上認爲如果我能以某種方式連接到5-10個設備,然而,這個想法並不是在添加新設備時不打擾用戶/重複提示。因此,我認爲使用廣告和洪水會有所幫助,但味精大小各不相同。有沒有可能會打擾用戶一次連接提示並自動連接每個額外的BLE設備。如果我能以某種方式以1:1的比例連接多個設備,而無需每次都提示用戶,同時仍然掃描其他可能的連接,這將非常有用,但我不認爲BLE允許這樣做。 - kdgwill 8秒前編輯
使用identifierForVendor或CBAdvertisementDataServiceUUIDsKey是唯一標識每個用戶的好方法;但是,這意味着如果我不使用1個註冊的UUID,我可能只是暫時隨機選擇一個UUID。那開銷將是4-16 +然而很多字節需要識別每個數據包。
一些鏈接我已經看到但是他們是很多人不是有時發生衝突 **的https://www.bluetooth.com/specifications/assigned-numbers/service-discovery **的https:// WWW .bluetooth.com/specifications/assigned-numbers ** http://processors.wiki.ti.com/index.php/Tutorial:_How_to_Create_a_Custom_Bluetooth_Smart_Embedded_Application_with_the_CC2650DK#UUID – kdgwill
** http://stackoverflow.com/questions/10243769/什麼範圍的藍牙uuids可以使用供應商定義配置文件 ** http://stackoverflow.com/questions/28714704/custom-ble-service-with-spp-support * * http://stackoverflow.com/questions/21428455/android-ble-using-custom-service-uuid ** http://stackoverflow.com/questions/18019161/startlescan-with-128-bit-uuids-沒有工作在本機android安裝執行/ ** https://www.safaribooksonline.com/library/view/getting-started-with/9781491900550/ch04.html – kdgwill