LELocation 1.5.1

LELocation 1.5.1

测试已测试
语言语言 Obj-CObjective C
许可证 自定义
发布最后发布2017 年 12 月

Romain Quidet 维护。



  • 作者
  • Romain Quidet

LELocation-framework-iOS

蓝牙 4.0 LE 框架,便于集成位置和导航服务流接收。在您的应用程序中获取标准 CoreLocation 数据。

1 - 摘要

一方面,您需要一个了解 GPS 的设备,如 iPhone。另一方面,您有一个需要 GPS 坐标但未嵌入 GPS 的设备,如 iPad。

蓝牙联盟提供一个标准接口,通过蓝牙 4.0(位置和导航服务,LNS)共享位置数据。它设计得非常高效(称为低功耗,LE)。但是,iOS 上的 CoreBluetooth 可能难以处理。




2 - GPS 发射器

在接收 GPS 数据之前,您需要一个 GPS 位置流器。我为此目的设计了一个应用程序。

它名为 LE GPS,可在以下位置获取


3 - 框架集成

现在,您已有了一个 GPS 数据流器,您需要将此框架集成到您的 iOS 应用中,以接收数据。

版本要求

  • 设备上最小 iOS:8.0
  • Xcode 上最小 iOS SDK:8.0

只需下载此框架,将其复制到您的项目仓库中。
完成后,将此框架拖放到 Xcode 界面中的 Frameworks。
或者点击 File(文件),添加现有文件并选择框架。

确保它被添加到与您的项目链接的框架
选择您的目标,转到通用选项卡,并检查 '链接的框架和库'。如果
LELocation 不在那里,点击 + 添加它。

其他必需的框架
您需要将您的项目与标准框架链接

  • CoreLocation
  • CoreBluetooth

请注意,此框架只能在支持蓝牙 4.0 的设备上工作。您仍然可以使用它在不支持蓝牙 4.0 的设备上(如 iPad 2),但它只能
失败地尝试启动 GPS 配对。

4 - 框架使用

一旦框架添加到您的项目中,使用它非常简单。

导入文件 "LELocationManager.h",以访问 API。

您将有权访问 LELocationManager 单例。它将为您处理蓝牙
事务。

获取位置

你基本上只需要设置一个委托对象,然后调用startUpdatingLocation方法。
方法

// start pairing with LE GPS and get locations
[LELocationManager sharedManager].delegate = self;
[[LELocationManager sharedManager] startUpdatingLocation];

startUpdatingLocation方法将检查蓝牙状态,启动LE GPS扫描并进行配对,然后处理数据流来创建标准的CoreLocation位置。

委托协议在"LELocationManagerDelegate.h"中可用,用于获取位置数据和错误处理的回调。

如果6秒后未找到GPS,管理器将返回空闲状态。

获取管理器状态

当你需要知道当前状态时,检查管理器状态属性,如果管理器空闲、搜索GPS或配对并接收位置数据。

停止

调用stopUpdatingLocation方法来关闭蓝牙流并停止获取位置。

// stop getting locations
[[LELocationManager sharedManager] stopUpdatingLocation];

在iOS上,蓝牙必须由用户打开,无法通过编程方式切换电源。一个典型的回调错误是LELocationManagerErrorBluetoothOff。

你需要要求用户打开蓝牙。

享受吧!!

罗曼