From 3665d4a91efd3909eb8421cdccaf757537fb9dd4 Mon Sep 17 00:00:00 2001 From: Michael Teeuw Date: Tue, 21 Oct 2014 09:28:58 +0200 Subject: [PATCH] Xcode 61. Fixes - Optional data and string vars. --- README.md | 14 +++++++------- nRF8001-Swift/NRFManager.swift | 8 ++++---- nRF8001-Swift/ViewController.swift | 4 ++-- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 1c694e0..b518692 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![Xcode Tested](http://img.shields.io/badge/Xcode%20Tested-Xcode%206.1%20Beta-orange.svg?style=flat) +![Xcode Tested](http://img.shields.io/badge/Xcode%20Tested-Xcode%206.1-orange.svg?style=flat) ![Bluefruit LE nRF8001 Breakout](https://raw.githubusercontent.com/MichMich/nRF8001-Swift/master/Images/nRF8001-Swift_rounded.jpg) @@ -51,7 +51,7 @@ let nrfManager = NRFManager() The Initializer takes 5 arguments. All of these arguments are optional and can be nil: ```Swift -let nrfManager = NRFManager(delegate:NRFManagerDelegate? = nil, onConnect connectionCallback:(()->())? = nil, onDisconnect disconnectionCallback:(()->())? = nil, onData dataCallback:((data:NSData, string:String)->())? = nil, autoConnect:Bool = true) +let nrfManager = NRFManager(delegate:NRFManagerDelegate? = nil, onConnect connectionCallback:(()->())? = nil, onDisconnect disconnectionCallback:(()->())? = nil, onData dataCallback:((data:NSData?, string:String?)->())? = nil, autoConnect:Bool = true) ``` - The **delegate** argument sets the delegate for the NRFManager instance. The delegate must conform to the `NRFManagerDelegate`. Default is `nil`. @@ -60,7 +60,7 @@ let nrfManager = NRFManager(delegate:NRFManagerDelegate? = nil, onConnect connec - The **onDisconnect** argument can take a closure to execute when the NRFManager disconnects from the nRF8001 module. Default is `nil`. -- The **onData** argument can take a closure to execute when the NRFManager receives data from the nRF8001 module. This closure will receive a `data:NSData` and `string:String` object. Default is `nil`. +- The **onData** argument can take a closure to execute when the NRFManager receives data from the nRF8001 module. This closure will receive a `data:NSData?` and `string:String?` object. Default is `nil`. - The **autoConnect** argument will tell the manager if it has to start searching and connect right away, and if it has to reconnect when the connection is lost. Default is `true`. @@ -82,7 +82,7 @@ let nrfClosureExample = NRFManager( println("Disconnected") }, onData: { - (data:NSData, string:String)->() in + (data:NSData?, string:String?)->() in println("Recieved data - String: \(string) - Data: \(data)") } ) @@ -146,7 +146,7 @@ nrfDidDisconnect(nrfManager:NRFManager) Called when the NRFManager disconnect from the nRF8001 module. The `nrfManager` variable will contain a reference to the NRFManager instance which disconnected. ```Swift -nrfReceivedData(nrfManager:NRFManager, data:NSData, string:String) +nrfReceivedData(nrfManager:NRFManager, data:NSData?, string:String?) ``` Called when the NRFManager receives data from the nRF8001 module. The `nrfManager` variable will contain a reference to the NRFManager instance which received data. `data` will contain the raw data, `string` will contain the string representation of the received data. @@ -180,7 +180,7 @@ class ViewController: UIViewController { println("Disconnected") }, onData: { - (data:NSData, string:String)->() in + (data:NSData?, string:String?)->() in println("Received data - String: \(string) - Data: \(data)") } ) @@ -223,7 +223,7 @@ class ViewController: UIViewController, NRFManagerDelegate { println("Disconnected") } - func nrfReceivedData(nrfManager:NRFManager, data: NSData, string: String) { + func nrfReceivedData(nrfManager:NRFManager, data: NSData?, string: String?) { println("Received data - String: \(string) - Data: \(data)") } } diff --git a/nRF8001-Swift/NRFManager.swift b/nRF8001-Swift/NRFManager.swift index 9cd9170..4c2d06b 100644 --- a/nRF8001-Swift/NRFManager.swift +++ b/nRF8001-Swift/NRFManager.swift @@ -53,7 +53,7 @@ public class NRFManager:NSObject, CBCentralManagerDelegate, UARTPeripheralDelega //callbacks public var connectionCallback:(()->())? public var disconnectionCallback:(()->())? - public var dataCallback:((data:NSData, string:String)->())? + public var dataCallback:((data:NSData?, string:String?)->())? public private(set) var connectionMode = ConnectionMode.None public private(set) var connectionStatus:ConnectionStatus = ConnectionStatus.Disconnected { @@ -86,7 +86,7 @@ public class NRFManager:NSObject, CBCentralManagerDelegate, UARTPeripheralDelega return Static.instance } - public init(delegate:NRFManagerDelegate? = nil, onConnect connectionCallback:(()->())? = nil, onDisconnect disconnectionCallback:(()->())? = nil, onData dataCallback:((data:NSData, string:String)->())? = nil, autoConnect:Bool = true) + public init(delegate:NRFManagerDelegate? = nil, onConnect connectionCallback:(()->())? = nil, onDisconnect disconnectionCallback:(()->())? = nil, onData dataCallback:((data:NSData?, string:String?)->())? = nil, autoConnect:Bool = true) { super.init() self.delegate = delegate @@ -287,7 +287,7 @@ extension NRFManager { @objc public protocol NRFManagerDelegate { optional func nrfDidConnect(nrfManager:NRFManager) optional func nrfDidDisconnect(nrfManager:NRFManager) - optional func nrfReceivedData(nrfManager:NRFManager, data:NSData, string:String) + optional func nrfReceivedData(nrfManager:NRFManager, data:NSData?, string:String?) } @@ -442,7 +442,7 @@ extension UARTPeripheral { } else if compareID(characteristic.UUID, toID: UARTPeripheral.hardwareRevisionStringUUID()){ log("Did read hardware revision string") // FIX ME: This is not how the original thing worked. - delegate.didReadHardwareRevisionString(NSString(CString:characteristic.description, encoding: NSUTF8StringEncoding)) + delegate.didReadHardwareRevisionString(NSString(CString:characteristic.description, encoding: NSUTF8StringEncoding) ?? "") } } else { log("Error receiving notification for characteristic: \(error)") diff --git a/nRF8001-Swift/ViewController.swift b/nRF8001-Swift/ViewController.swift index e697fcb..8e9db06 100644 --- a/nRF8001-Swift/ViewController.swift +++ b/nRF8001-Swift/ViewController.swift @@ -24,7 +24,7 @@ class ViewController: UIViewController, NRFManagerDelegate { self.log("C: ★ Disconnected") }, onData: { - (data:NSData, string:String)->() in + (data:NSData?, string:String?)->() in self.log("C: ⬇ Received data - String: \(string) - Data: \(data)") }, autoConnect: false @@ -57,7 +57,7 @@ extension ViewController self.log("D: ★ Disconnected") } - func nrfReceivedData(nrfManager:NRFManager, data: NSData, string: String) { + func nrfReceivedData(nrfManager:NRFManager, data: NSData?, string: String?) { self.log("D: ⬇ Received data - String: \(string) - Data: \(data)") } }