終於把專案整理了一下
這邊小解釋一下,其他還有問題就留言我盡量幫忙看看囉
首先我把專案設計成三個 ViewController,分別處理不同的事情,如下圖
在 ViewController1 和 ViewController2 的列表 item 如下兩圖
終於把專案整理了一下
這邊小解釋一下,其他還有問題就留言我盡量幫忙看看囉
首先我把專案設計成三個 ViewController,分別處理不同的事情,如下圖
在 ViewController1 和 ViewController2 的列表 item 如下兩圖
AsyncSocket 下載位置
因為專案是 swift 專案,要使用 objecitive-c 的函式庫要在 Header 檔中 import
1.複製AsyncSocket.m
及AsyncSocket.h
到專案中,xcode 會問你是否建立 Bridge file,確定建立
2.在 你的專案名稱-Bridging-Header.h
檔中加入#import "AsyncSocket.h"
3.建立連線物件var socket: AsyncSocket = AsyncSocket(delegate: 委派對象)
extension NSData {
func getByteArray() -> [UInt8]? {
var byteArray: [UInt8] = [UInt8]()
for(var i = 0;i < self.length; i++) {
var temp: UInt8 = 0
self.getBytes(&temp, range: NSRange(location: i, length: 1))
byteArray.append(temp)
}
return byteArray
}
}
終於到的這個階段
這階段主要目的是要得知哪幾個特徵值是和客製化藍芽裝置通訊的介面,在上一階段可以看到每個 characteristic 的 property 屬性有些一權限,例如 Read / Wirte / Notify … 等等
要和藍芽裝置進行連線,需要幾個物件來實作
1. 掃描到藍芽裝置時的 centralManager
2. 藍芽裝置的 peripheral
所以先加入一個新的 ViewController 在點擊 tableView 的時候去切換 segue,並把 centralManger 和要連線的藍芽 peripheral 送過去
這邊建立一個 BTDeviceConfigViewController 的 ViewController 和對應的 storyboard 視圖
1.先拉一個 UIViewController 並用 NavigationController embed 起來,在 Navigation Bar 上面加個 title 和 UIBarButtonItem,這邊是選擇 Refresh 的 System Item 樣式,並且在剩下的範圍加上一個 UITableview 當作掃描後顯示藍芽裝置的列表
使用 CoreBluetooth 連線可以大致分為幾個步驟