【问题标题】:Accessing Bluetooth via Bonjour/GameKit from the iPhone SDK simulator (circa 3.1.3)从 iPhone SDK 模拟器通过 Bonjour/GameKit 访问蓝牙(大约 3.1.3)
【发布时间】:2010-02-08 14:12:42
【问题描述】:

我正在为 iPhone 原型获取硬件,我想知道是否可以使用 SDK 的模拟器访问由开发盒(例如 macbook)公开的蓝牙(ExternalAccessory、Bonjour 或 GameKit)最新版本(撰写本文时为 3.1.3)

在我得到任何关于这个主题的答案之前,我接受 I will need an iPhone 用于实际开发 - 这只是一个原型。

【问题讨论】:

  • 您确定要链接到正确的问题吗?您指出的是关于 Android 模拟器,而不是 iPhone。
  • 谢谢你指出我的白痴:) 已修复

标签: iphone bluetooth emulation


【解决方案1】:

我不确定我是否完全理解您的问题。

我可以说,在 iOS(截至 2011 年 5 月)中,您必须通过 Gamekit 功能才能访问 bonjour。该功能相当强大,但(例如)您将无法创建其他不支持 iOS BT 的设备可以找到的基于 BT 的 bonjour 服务。

在模拟器上,即使底层设备具有蓝牙功能,您也无法执行“真正的”蓝牙操作。相反,模拟器将模拟某些功能,而忽略其他功能。为了测试 BT 代码,您确实需要多个设备来加载和运行您的代码。

【讨论】:

  • 你答案的第二方就是我要找的。​​span>
  • 对不起,我不能给你更好的消息!从好的方面来说,Gamekit 功能使 BT 非常易于使用。一个没有很好记录的功能是您可以在每台设备上打开多个 BT 会话。
  • 您在无法访问 Bonjour 方面是公然错误的:NSNetService,因此 Bonjour 从 iOS 2.0 开始可用。请参阅文档。我相信在您的第二段中您想说“蓝牙”代替“Bonjour”,但很长一段时间以来,任何使用本地 Bonjour 也可以通过蓝牙实现 P2P 连接。仅在 iOS 5 中默认 Bonjour 不再通过 Bonjour-over-Bluetooth 启用 P2P 连接。
  • 伊万,对不起,我不清楚。您(当然)可以编写通过 NSNetService 访问 Bonjour 的代码,但这就像说您可以访问 Google API,因为您可以使用 HTTP——我说的是无法访问 iOS 上的高级 Bonjour 框架,除非通过 GameKit .一个与 Bonjour 兼容的开源包是 JmDNS,这是我在我的项目中使用的。
【解决方案2】:

使用模拟器无法访问蓝牙连接。如果 WiFi 对您来说足够好,那么它也适用于模拟器上的 Bonjour 和 GameKit。否则,就像加速度计和设备的其他几个组件一样,您将需要一个实际的设备。

【讨论】:

    猜你喜欢
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-24
    相关资源
    最近更新 更多