如果代碼能響應 didDiscoverPeripheral 方法,但是調用 connectPeripheral 方法之後程序無法響應 didConnectPeripheral 方法,那麼十有八九是你沒有定義強類型的 peripheral 並給它賦值。因爲不是強類型的 peripheral 對象會被釋放掉,故無法響應didConnectPeripheral方法。
解決方法:
1、定義強類型的 peripheral
@property (nonatomic,strong) CBPeripheral *m_peripheral;
_m_peripheral = peripheral;
這樣就能完美解決了。