蓝牙开发

蓝牙开发使用CoreBluetooth框架
实现两个iOS设备、iOS设备与非iOS蓝牙设备的交互。要注意的一点是目前这个框架只能支持蓝牙4.0BLE标准,所以对硬件上是有一定要求的,iPhone 4S及以后的设备,第三代iPad及以后的设备是支持这一标准的。
系统蓝牙设备管理对象 CBCentralManager
外围设备 CBPeripheral
外围设备的服务或者服务中包含的服务 CBService
服务的特性通道 CBCharacteristic
特性的描述符 CBDescriptor

第一步:创建自己蓝牙的的中心管理器

 var centerMenage:CBCentralManager;  //自己的蓝牙设备
 centerMenage = CBCentralManager.init(delegate: self, queue: nil, options: nil);//对其初始化

第二步:实现蓝牙的的中心管理器代理

 //当自己设备的状态发生改变的时候调用 这个方法必须实现
 func centralManagerDidUpdateState(_ central: CBCentralManager) 
 {
        print("中心设备的状态发生改变"+"\(central.state)");
 }
 //状态说明
 public enum CBManagerState : Int {
    case unknown                    //初始的时候是未知的(刚刚创建的时候)
    case resetting                  //正在重置状态
    case unsupported                //设备不支持的状态
    case unauthorized               //设备未授权状态
    case poweredOff                 //设备关闭状态
    case poweredOn                  //设备开启状态 -- 可用状态
 }
 //弹出打开蓝牙的提示框
 let blueToothUrl = NSURL(string: "App-Prefs:root=Bluetooth");
 if UIApplication.shared.canOpenURL(blueToothUrl! as URL) 
 {
        UIApplication.shared.openURL(blueToothUrl! as URL);
 }
//打开提示框集锦
 打开提示框
     Wi-Fi: App-Prefs:root=WIFI
     蓝牙: App-Prefs:root=Bluetooth
     蜂窝移动网络: App-Prefs:root=MOBILE_DATA_SETTINGS_ID
     个人热点: App-Prefs:root=INTERNET_TETHERING
     运营商: App-Prefs:root=Carrier
     通知: App-Prefs:root=NOTIFICATIONS_ID
     通用: App-Prefs:root=General
     通用-关于本机: App-Prefs:root=General&path=About
     通用-键盘: App-Prefs:root=General&path=Keyboard
     通用-辅助功能: App-Prefs:root=General&path=ACCESSIBILITY
     通用-语言与地区: App-Prefs:root=General&path=INTERNATIONAL
     通用-还原: App-Prefs:root=Reset
     墙纸: App-Prefs:root=Wallpaper
     Siri: App-Prefs:root=SIRI
     隐私: App-Prefs:root=Privacy
     定位: App-Prefs:root=LOCATION_SERVICES
     Safari: App-Prefs:root=SAFARI
     音乐: App-Prefs:root=MUSIC
     音乐-均衡器: App-Prefs:root=MUSIC&path=com.apple.Music:EQ
     照片与相机: App-Prefs:root=Photos
     FaceTime: App-Prefs:root=FACETIME
     ...
     之前的prefs或者Prefs 替换成最新的 App-Prefs

你可能感兴趣的:(蓝牙开发)