介绍
Swift 编写的 iBeacon 侦测管理器框架。
要求
- 平台
- iOS 10.0+
- Swift 5.0
安装
Carthage
从 github "daisuke-t-jp/BeaconDetectManager" 安装
CocoaPods
use_frameworks!
target 'target' do
pod 'BeaconDetectManager'
end
使用说明
引入框架
import BeaconDetectManager
使用委托
class ViewController: UIViewController, BeaconDetectManagerDelegate // <- ! {
override func viewDidLoad() {
super.viewDidLoad()
BeaconDetectManager.sharedManager.delegate = self // <- !
开始检测
使用proximityUUID开始检测,major和minor的值将被通配
BeaconDetectManager.sharedManager.start("YOUR PROXIMITY UUID",
eventOption: [.didEnterRegion, .didExitRegion, .didRangeBeacons])
使用proximityUUID和major值开始检测,minor的值将被通配
BeaconDetectManager.sharedManager.start("YOUR PROXIMITY UUID",
eventOption: [.didEnterRegion, .didExitRegion, .didRangeBeacons],
majorMinorArray: [BeaconDetectManager.MajorMinor(major: 0xabcd)])
使用proximityUUID和major/minor值开始检测
BeaconDetectManager.sharedManager.start("YOUR PROXIMITY UUID",
eventOption: [.didEnterRegion, .didExitRegion, .didRangeBeacons],
majorMinorArray: [BeaconDetectManager.MajorMinor(major: 0xabcd, minor: 0x0001),
BeaconDetectManager.MajorMinor(major: 0xabcd, minor: 0x0010),
BeaconDetectManager.MajorMinor(major: 0xabcd, minor: 0x0100),
BeaconDetectManager.MajorMinor(major: 0xabcd, minor: 0x1000),
BeaconDetectManager.MajorMinor(major: 0xdcba, minor: 0x0001),
BeaconDetectManager.MajorMinor(major: 0xdcba, minor: 0x0010),
BeaconDetectManager.MajorMinor(major: 0xdcba, minor: 0x0100),
BeaconDetectManager.MajorMinor(major: 0xdcba, minor: 0x1000)])
实现代理
// Delegate called when disabled location service.
func beaconDetectManagerDidDisableLocationService(_ manager: BeaconDetectManager) {
}
// Delegate called when disabled bluetooth service.
func beaconDetectManagerDidDisableBluetoothService(_ manager: BeaconDetectManager) {
}
// Delegate called when user entered the specified region.
func beaconDetectManager(_ manager: BeaconDetectManager, didEnterRegion region: CLRegion) {
}
// Delegate called when user exited the specified region.
func beaconDetectManager(_ manager: BeaconDetectManager, didEnterRegion region: CLRegion) {
}
// Delegate called when one or more beacons are in range.
func beaconDetectManager(_ manager: BeaconDetectManager, didRangeBeacons beacons: [CLBeacon]) {
}