Запуск IOS 9.1 с Xcode 7.1.1 в соответствии с 10.11.1. Cut'n'pasted этот код из этого урока; и дважды проверьте его с несколькими другими источниками/сайтами.Bluetooth, поврежденный в IOS 9.1/Xcode 7.1.1
http://hatemfaheem.blogspot.ch/2014/12/how-would-you-scan-for-nearby-ble.html
Это код, у меня есть ...
import Foundation
import CoreBluetooth
class BLEManager {
var centralManager : CBCentralManager!
var bleHandler : BLEHandler // delegate
init() {
self.bleHandler = BLEHandler()
self.centralManager = CBCentralManager(delegate: self.bleHandler, queue: nil)
}
}
class BLEHandler : NSObject, CBCentralManagerDelegate {
override init() {
super.init()
}
func centralManagerDidUpdateState(central: CBCentralManager) {
switch (central.state)
{
case .Unsupported:
print("BLE is unsupported")
case .Unauthorized:
print("BLE is unauthorized")
case .Unknown:
print("BLE is unknown")
case .Resetting:
print("BLE is reseting")
case .PoweredOff:
print("BLE is powered off")
case .PoweredOn:
print("BLE is powered on")
central.scanForPeripheralsWithServices(nil, options: nil)
default:
print("BLE default")
}
}
func centralManager(central: CBCentralManager, didConnectPeripheral peripheral: CBPeripheral) {
print("didConnectPeripheral")
}
func centralManager(central: CBCentralManager!,
didDiscoverPeripheral peripheral: CBPeripheral!,
adverismentData: [NSObject : AnyObject]!,
RSSI: NSNumber!)
{
print("\(peripheral.name) : \(RSSI) dBm")
}
}
Что я вызываю в View Controller с этим кодом
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
var bleManager: BLEManager!
bleManager = BLEManager()
}
Теперь я запускаю его на IPad Air с 9.1 и подключите и отсоедините и замените ibeacon, но на консоли ничего не появляется, что говорит о том, что он просто не работает. Теперь я знаю, что ibeacon работает; потому что я нахожу его с помощью инструмента ScanBeacon от Radius Networks.
OK Я понимаю, что ibeacons и Core Bluetooth не сочетаются так хорошо, но верно ли это должно быть вызвано? Или я пропустил кривую в моем коде?
Да; как я не мог этого видеть! Теперь он работает на моем iPad! БЛАГОДАРЯ!! – user3069232