我在本网站和互联网上的许多帖子中都看到了诸如“设备不支持”等问题的问题,所以我觉得我遇到的问题并不是唯一的。
让我感到困惑的是(并且相信我,我一整天都在搜索)是我最近买了一台新的Macbook Pro计算机(肯定是这个东西的BT是LE),升级到Mavericks,并且正在使用Xcode 5.但无论如何,我下载了什么示例代码,无论是来自BT SIG还是CSR等,我总是得到相同的基本错误(在iOS模拟器上):
“Device Unsupported”AND的效果 关于它如何无法运行的问题,因为它没有启动(我确实尝试通过在if块中包装central.state调用来解决)
那么,如果我们没有LE设备,那么今天开始编写蓝牙代码的人是否只是搞砸了? 4.0之前的所有BT代码是否都脱离了地球或者被弃用了?
是否有一种简单的方法可以强制我的代码在某种类型的“非LE”模式下运行?
至于我正在使用的代码,我从BT SIG下载了快速入门套件,但没有任何作用,甚至是我找到的简单扫描程序。呃,有什么想法吗?
我的最终目标是写一些没有错误的东西,加载到我的iPhone 4上,扫描并与我的汽车的立体声配对,抓住它发出的所有外围广告,看看我能做些什么(至)立体声。
谢谢大家。
答案 0 :(得分:1)
虽然您的计算机确实具有蓝牙低功耗/蓝牙4.0 /蓝牙智能(它们对同一事物都有不同的名称)功能,但模拟器无法使用这些功能。不久前你可以在Mac上添加一个额外的BT4.0加密狗,然后从模拟器中访问它,但不再支持 - 请参阅Does the iPhone simulator in Xcode support Bluetooth Low Energy?
您可以使用计算机在Xcode for OSX中开发BT4.0 / BLE代码,但如果您想开发和测试iOS代码,则需要支持BLE的iOS设备(iPhone 4S或更高版本,iPad mini / 3rd gen) / Air或iPod Touch第5代)
仅通过Apple MFI program访问非BT4设备,但少数通用配置文件除外,例如免提和& A2DP流媒体 - 但这些是作为音频设备而非蓝牙设备暴露给您的程序。
如果您有iPhone 4S(不是iPhone 4),那么您可以使用App Store中的LightBlue应用程序查看您的汽车音响是否正在宣传任何BLE服务(可能不是)。
答案 1 :(得分:0)
crawdaddy18,蓝牙Smart / 4.0 / LE是根本不同的技术,然后我们称之为蓝牙经典(2.0 / 2.1 / EDR / BR ......这就是你所指的汽车音频示例)。如果您想查看汽车音响的内容,请查看它支持的配置文件(应在文档中列出)。然后看看这里:
https://developer.bluetooth.org/TechnologyOverview/Pages/Profiles.aspx#Profiles
此页面列出了所有“经典”配置文件。您应该在列表中找到与您的汽车相匹配的那些。然后,您将了解汽车音响支持的功能。
然后,通过操作系统文档来查看经典蓝牙的对象模型。通常这些都是由代表配置文件的对象模型支持,或者以某种方式通过RFCOM进行争论......但每个操作系统都有点不同。
但是大多数那些工具,包括应用程序加速器,都可以让你在那里探索LE(智能)设备。如果要使用Application Accelerator之类的东西来查看非LE设备,则必须重新编写代码以切换在OS的SDK中使用的对象模型。您现在发现的最新工具面向LE方面的原因是,这是配件(和蓝牙行业)正在发展的大幅增长。但是有大量的示例代码可以帮助创建一个应用程序来扫描并连接到经典的蓝牙设备。