[問題] 請問藍芽連線問題

看板MacDev作者 (i7pro)時間7年前 (2017/08/24 16:34), 7年前編輯推噓2(207)
留言9則, 4人參與, 最新討論串1/1
哈囉 想請問一個有關藍芽藍線問題 當我已經開始掃描藍牙設備的時候 如果我再觸發一次scanForPeripherals 他就完全掃不到設備了 這會是因為他把第二次掃到的設備跟前一次比較 如果是相同的就合併嗎? 所以請問有沒有人遇過這個問題? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.134.182.243 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1503563644.A.86D.html ※ 編輯: iphone7pro (220.134.182.243), 08/24/2017 16:38:20

08/24 21:14, , 1F
再次scan前不先stop scan嗎?
08/24 21:14, 1F

08/24 23:52, , 2F
要先停止才能進行下次掃描
08/24 23:52, 2F

08/25 00:28, , 3F
option:CBCentralManagerScanOptionAllowDuplicatesKey
08/25 00:28, 3F

08/25 00:29, , 4F
預設NO 所以不是新的peripherals就不會再出現
08/25 00:29, 4F

08/25 00:30, , 5F
這樣你就不用再觸發一次scanForPeripherals
08/25 00:30, 5F
改成先停止再開始就可以掃到設備了 感恩感恩~~!! 想再問一下就是像我們接收到藍牙給的資料時是16位元的資料 然後再把這個資料轉換成我們要的數據 這個過程會用到一些api UnsafePointer<UInt8>((data as? NSData)?.bytes.assumingMemoryBound (to: UInt8.self)) 然後取得pointee Pointer?.withMemoryRebound(to: UInt16.self, capacity: 1, <#T##body: (UnsafePointer<T>) throws -> Result##(UnsafePointer<T>) throws -> Result#>) 好奇這些過程再做什麼事情 看一下文件裡面的解釋還是看不太懂QQ ※ 編輯: iphone7pro (220.134.182.243), 08/25/2017 10:23:17 ※ 編輯: iphone7pro (220.134.182.243), 08/25/2017 10:34:47

08/25 11:04, , 6F
抓資料我是這樣寫
08/25 11:04, 6F

08/25 11:04, , 7F
var rawData = [CUnsignedChar](repeating: 0,count:
08/25 11:04, 7F

08/25 11:04, , 8F
data.count)
08/25 11:04, 8F

08/25 11:05, , 9F
data.copyBytes(to: &rawData, count: data.count)
08/25 11:05, 9F
文章代碼(AID): #1PdezyXj (MacDev)
文章代碼(AID): #1PdezyXj (MacDev)