调试 iOS 蓝牙应用的新方法

如需要了解更多蓝牙相关知识,请点击下方连接

https://blog.csdn.net/weixin_47456647/article/details/155188246?spm=1011.2415.3001.5331

如果你正在 iOS 平台上开发蓝牙 ® 应用,或是为 iOS 应用进行嵌入式固件开发,本文将教你如何利用 iOS 设备与 Mac 电脑搭建调试系统:捕获 iOS 设备与配对设备之间的空中蓝牙数据包,并在 iOS 设备上提供 HCI(主机控制器接口)日志。

所需工具

  • iOS 13 设备及数据线
  • Mac 电脑 / 笔记本
  • Apple 开发者计划账号

在目标 iOS 设备上安装配置文件

复制下方链接,粘贴到目标 iOS 设备的浏览器中:https://developer.apple.com/bug-reporting/profiles-and-logs/?name=bluetooth

页面加载完成后,点击 "Bluetooth for iOS" 下方的 "Profile"(红色矩形区域)。

浏览器会提示你登录 Apple 开发者账号。登录成功后,会显示如下页面,此时点击 "Allow" 按钮即可。

如下图所示,选择 "iPhone" 来安装此配置文件。

浏览器会下载配置文件。当出现以下界面时,说明配置文件已下载完成。根据提示 "若要安装,请在设置应用中查看该配置文件",请打开 iOS 设备上的 "设置" 应用。

在 "设置" 应用中,点击如下所示的 "已下载配置文件" 标签。

现在,点击 "安装" 按钮(红色矩形区域)来安装配置文件(见右侧图片)。此时配置文件已成功安装。

安装 Xcode 11

请访问 App Store 或此链接,在你的 Mac 上安装 Xcode 11。

安装 packetLogger

通过此链接下载 Xcode 11 的附加工具。下载完成后,打开Additional_Tools_for_Xcode_11.dmg,进入 "Hardware" 文件夹 ------packetLogger 工具就在该文件夹内,如下所示。

你可以将 packetLogger 拖放到 "应用程序" 文件夹中完成安装。

开始蓝牙数据包分析

打开 packetLogger,主界面会如下所示呈现。

将已安装配置文件的 iOS 设备通过数据线连接到 Mac,然后点击 "文件"→"新建 iOS 跟踪",操作如下所示。

packetLogger 会开始跟踪这台已安装配置文件的 iOS 设备上的所有蓝牙活动。此时,iOS 设备屏幕的左上角会显示一个脉冲图标(见下图),这表示跟踪正在进行中。

根据 2019 年 WWDC 的这场会议,packetLogger 具备以下功能:

  • 作为蓝牙数据包分析应用使用
  • 解析蓝牙技术联盟(SIG)和苹果定义的所有协议
  • 提供丰富的筛选选项
  • 支持文本 / 正则表达式搜索
  • 对数据包进行标注与标记
  • 导出原始数据用于分析

另外,经真机测试,packetLogger 支持传统蓝牙(BR/EDR)和蓝牙低功耗。

总结

无论你是 iOS 开发者还是嵌入式固件工程师,这种方法都能帮你调试和跟踪应用。不过,若要在空中调试或跟踪蓝牙 ® 网状网络的数据包,仍需使用专业的蓝牙数据包分析仪。

相关推荐
fengye2071619 小时前
实验:CPython 迭代协议底层验证(`PyObject_GetIter` / `PyIter_Next`)
macos
Quanqiucard10 小时前
电价 15 分钟一调,光伏物联网卡选错,断一次就没依据
物联网
MuMuMu122311 小时前
越华环保集团碳惠小屋:存量场景终端选型,全生命周期成本分析方案
物联网
2501_9160074715 小时前
抓包工具功能对比,TraceEagle、Charles、Fiddler、Wireshark、mitmproxy 差别
前端·网络协议·ios·adb·https·fiddler·wireshark
数字新视界16 小时前
信创认证动环监控在提升机房环境安全与效率中的关键作用
物联网·数据可视化·数据中心基础设施管理·dcim管理系统·数据中心dcim
GIS数据转换器16 小时前
基于CIM的城市智慧供热监管服务平台
java·大数据·开发语言·人工智能·后端·物联网·struts
DevLoom_18 小时前
macOS 命令行 curl/git 报 SSL 证书错误?eMudhra 事件完整修复指南
git·macos·ssl
螺蛳粉 螺蛳粉19 小时前
CDH第七篇:CDH 集成 Kafka 实战:CSD + Parcel 组合拳,先装 ZooKeeper 是铁律
物联网·zookeeper·kafka·消息队列·parcel·cdh集成·csd
2501_9151063219 小时前
Windows 上开发 Unity iOS,使用 KXBuild 进行真机调试、性能采样与打包 ipa
windows·vscode·unity·ios·个人开发·swift·敏捷流程
weixin_4043806320 小时前
MQTT 上云验收:ESP32-S3 从局域网控灯到远程网页控制
物联网·mqtt·esp32