新的蓝牙应用调试方法 – 使用iOS设备进行调试

时间:2024-05-23 10:52:36

任凯 蓝牙技术联盟 10月25日

如果你正在iOS平台上开发蓝牙应用程序,或者为iOS应用程序进行对端设备的嵌入式固件开发,那么本文将告诉你如何使用iOS设备和macOS设备建立调试系统,如何获取iOS设备与对端设备之间所进行通信的蓝牙数据包。      

 

您需要:

iOS 13设备与数据线(充电线)

macOS台式计算机或笔记本计算机

Apple开发者计划帐户

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

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

 

复制以下链接并将其粘贴到目标iOS设备的浏览器中。

https://developer.apple.com/bug-reporting/profiles-and-logs/?name=bluetooth

 

浏览器将显示以下网页。现在,单击Bluetooth for iOS下的 Profile(下图红框处)。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

浏览器将询问您请登录Apple Developer。成功登录后,将出现以下网页。单击 Allow (允许)按钮。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

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

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

该浏览器将下载配置文件。如出现以下屏幕,则表示该配置文件已下载。根据提示 Review the profile in Settings app if you want to install it(如要安装该配置文件,请在设置应用程序中审核),在您的iOS设备上打开Settings (设置)应用程序。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

如下图所示,在 Settings (设置)应用程序中,单击Profile Downloaded (已下载的配置文件)选项卡。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

单击Install (安装)(下图中的红框处)按钮安装该配置文件(参见右图)。现在已成功安装该配置文件。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

安装Xcode 11

 

请访问App Store或在您的macOS设备上打开以下链接来安装Xcode 11。

https://developer.apple.com/xcode/

 

安装packetLogger

 

请通过以下链接下载Additional Tools for Xcode 11(Xcode 11附加工具)。

下载成功后,打开Additional_Tools_for_Xcode_11.dmg 并访问Hardware (硬件)文件夹。如下图所示,packetLogger 位于该文件夹内。 

https://idmsa.apple.com/IDMSWebAuth/signin?appIdKey=891bd3417a7776362562d2197f89480a8547b108fd934911bcbea0110d07f757&path=%2Fdownload%2Fmore%2F%3F%3Dxcode&rv=1

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

你可以将packetLogger 拖曳至你的 Application (应用程序)文件夹中进行安装。

 

启动蓝牙数据包分析

 

打开packetLogger,主用户界面如下图所示。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

用数据线把已安装配置文件的iOS设备与您的macOS设备连接起来,然后如下图所示,单击File à New iOS Trace(启动新的iOS追踪)。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

之后,packetLogger 将开始追踪该已安装配置文件的iOS设备上的所有蓝牙活动。在该iOS设备屏幕的左上角将显示一个脉冲图标(参见下图红框),表示正在进行追踪。

 

新的蓝牙应用调试方法 – 使用iOS设备进行调试

 

根据苹果 2019年全球开发者大会(WWDC 2019 [https://developer.apple.com/videos/play/wwdc2019/901/ ],

 

packetLogger 能够

  • 作为蓝牙数据包分析的应用程序

  • 对蓝牙技术联盟和苹果定义的所有协议进行解码

  • 执行丰富的筛选选项

  • 通过文本正则表达式(text regex)搜索

  • 评论和标记数据包

  • 导出原数据用于分析

另外,实际设备测试表明,packetLogger 支持基础速率/增强速率(BR/EDR)蓝牙和低功耗蓝牙。

 

总结

无论你是iOS开发者还是嵌入式软件工程师,本方法都能帮助你调试并追踪应用程序。如果你想以调试或追踪蓝牙mesh 空中数据包,则还需要有更加专业的蓝牙数据包分析仪器。