问题标签 [btle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
857 浏览

ios - 在 iOS 8.1 模拟器上测试 BTLE 应用

我是 iOS 应用程序开发的新手。我必须在 iOS 8.1 模拟器上使用 BTLE 测试应用程序。我无法找到如何在模拟器中打开蓝牙。任何人都可以帮助如何在模拟器上测试基于 BTLE 的应用程序。如果有人可以回答是否必须支付 99 美元才能使用我的 MacBook Air 在我的 iPHone/iPad 上部署我的应用程序,那也会有很大帮助?

系统详细信息为: OS X 10.9.4 Xcode 6.1 iOS 8.1 Simulator iOS SDK 8.1

0 投票
1 回答
353 浏览

ios - BTLE Corebluetooth iOS 传输数组

我正在使用 Apple 示例代码 BTLE_TRANSFER https://developer.apple.com/library/ios/samplecode/BTLE_Transfer/Introduction/Intro.html 在示例中,iOS 设备“A”向另一台 iOS 设备“B”发送了一些B(中央)订阅“A”(外围)的特征时的“文本”(NSString)。(数据被切割成碎片然后逐块发送,直到另一边收到所有内容)

我修改了代码以使用 UIImageJPEGRepresentation 方法传输图像,它工作正常(但当图像大小超过 2 ko 时需要很长时间)

现在我想尝试传输一组不同的对象,如文本、图像。

我在 didSubscribeToCharacteristic 方法(外围管理器端)中尝试了以下代码:

其中 _dataToSend 是发送的 NSData

以及 didUpdateValueForCharacteristic 方法中的以下代码(中央端 - 外围委托):

其中 _dataReceived 是收到的 NSData

每一块都在中央接收,但有些部分是“空的”,当我尝试将数据取消归档到 nsarray 时,它说数据是空的。

我使用了错误的方法吗?有没有其他方法可以将 nsarray 放入 nsdata 中?

谢谢您的帮助

吉米

0 投票
0 回答
56 浏览

ios - App Store 上的 iOS 应用程序不检测 BTLE 设备,但开发版本可以

我有一个能够检测 BTLE 设备并在开发人员版本中连接到它们的应用程序。将此提交到应用商店并下载后,我无法检测到任何设备。是否有我必须添加的权限?

我看过:

这些似乎是针对在后台使用BT。我的应用程序不处理后台连接。当用户离开应用程序时,它会断开任何现有的通信。

这似乎是限制用户的设备只能使用BT。这对我们来说是一种选择,但不是必需的。如果这意味着它可以工作,那么我们将添加它,但如果它们没有连接到也可以的设备。

我对如何测试这个也有点困惑。如果我的开发版本正在运行,但只有应用商店版本不是,我不确定如何测试,除了每次都将其提交到应用商店进行审查和测试。

谢谢!

0 投票
1 回答
1051 浏览

android - iOS可以发现Android设备的蓝牙吗?

我知道我们无法通过蓝牙在 android 和 iOS 设备之间传输数据。但是,iOS设备可以扫描并“看到”android蓝牙设备(获取蓝牙名称的列表),在这两种情况下都是正常的蓝牙和BLE吗?

0 投票
2 回答
501 浏览

ios - iOS iBeacons 无法在少数设备上运行

我一直在尝试运行 iBeacon Receiver 示例。该代码应该检测设备进入区域并退出区域。iBeacon 区域由运行在另一台 iOS 设备上的发射器创建。

接收器代码在我拥有的其中一台设备(iOS 7.0.1)中完美运行。它正在检测该区域的进出。但是相同的代码在其他几台装有 iOS 7.1 [iPad Air] 和 iOS 8.0 [iPad Mini] 的设备上不起作用。

我相信这些硬件支持蓝牙 LE。

我会丢失设备上的一些配置吗?我无法追踪它。你能建议吗?

0 投票
1 回答
415 浏览

btle - 如何将linux系统制作成蓝牙LE外围设备

我希望我的 linux 系统充当外围设备,在蓝牙 LE 通信中宣传一些数据。我可以使用 ble 扫描仪或 ble explorer 等安卓应用程序来检查我的系统是否广告成功?

0 投票
2 回答
1319 浏览

ios - 核心蓝牙外设每 30 秒断开一次

我有一个充当蓝牙 LE 外围设备的应用程序。我有一个具有四个特征的服务。4 个中的 2 个是只读和可写的,另外两个配置为 notify。

如果我订阅了“通知”特征之一,那么应用程序将不会断开连接,直到我手动执行此操作,效果很好。

我的问题是,如果我读取或写入其他特征,然后在大约 30 秒内处于非活动状态,则 BTLE 连接会与外围设备断开连接。这可能是苹果设置的限制,不确定。

任何人都知道即使没有任何订阅者并且在 30 秒内没有收到读取或写入命令也可以保持外围设备处于活动状态的解决方案?

0 投票
1 回答
119 浏览

ios - Xamarin - 具有 BT 低能量和 TTS 的 iOS 后台

我正在开发一个概念验证应用程序。我正在为 iOS 使用 Xamarin。iPhone 应用程序在后台运行并监视特定的 BTLE 设备,并在信号达到一定强度时使用 TTS 说话。我有 TTS 工作,当应用程序在前台时,我可以识别 BTLE 设备。

但是,当 iPhone 屏幕关闭时,我无法正常工作。在 Android 中,我只使用唤醒锁,但在 iOS 中似乎不可用。我尝试在 info.plist 文件中为 BTLE 和声音设置背景模式,但我没有看到在设备暂停时发生任何处理。谁能指出我正确的方向?

这只是一个概念证明,所以我只看最新的 iOS 版本,我甚至对 hacky 答案感兴趣。

谢谢!

0 投票
1 回答
75 浏览

c# - BTLE 4.0 有效载荷

我正在尝试获取从 BLE 收到的有效载荷,看起来像这样。我在这里与 arduino 合作。

现在,我不完全确定如何翻译。我也一直在阅读 BTLE 4.0 规范,但没有抢购任何有意义的东西。

任何人都可以在这里指导/指出我正确的方向,将不胜感激!

0 投票
0 回答
703 浏览

ios - 为什么我的外围设备无法连接到其他设备?

我的 iPad mini(iOS7.1.2) 有我的应用程序使用 CoreBluetooth 作为外围设备。它的 state( CBPeripheralManager::state) 是PoweredOn,并且在添加和开始宣传我的服务时没有任何其他错误。但是,外围设备周围的任何中央设备都无法连接到它。

当然,我认为中央设备可能存在问题。这不是真的,因为这些中央设备可以与除“那个外围设备”之外的其他外围设备连接。当我试图与外围设备连接时,- (void)centralManager:(CBCentralManager *)central didDisconnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error被调用。(错误代码为 7)。

外围设备没有显示任何错误,并且中央设备在重新启动外围设备之前无法连接。我应该多做些什么?我应该将设备升级到 iOS8 吗?

ps 中心设备多种多样,从iPhon4s到iPhone6+,从iOS7.0.6到iOS8.2。中央设备和外围设备都没有问题。

ps 只发生过一次,但是在奇怪的状态下,外围状态突然变成了ResettingPoweredOn又一次。之后,连接就没有问题了。不知道为什么状态突然变成了 Resetting,状态是怎么变的。

+添加 @ 04081228 (GMT+0000)

我从试图与外围设备连接的中央设备中发现了一些可疑的日志。以下是一些日志。

4 月 8 日 21:20:57 BTServer[61]:ATT 无法在设备“9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3”上找到 GATT 主>服务

Apr 8 21:20:57 BTServer[61] : ATT Aborting command as device >"9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3" 不再连接

4 月 8 日 21:21:08 BTServer[61]:ATT 无法在设备“9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3”上找到 GATT 主>服务

Apr 8 21:21:08 BTServer[61] : ATT Aborting command as device >"9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3" 不再连接

我发现来自 github 的评论说这是 iOS 的已知问题。不过,我找不到有关此的任何其他信息。

+添加@ 04081304 (GMT+0000)

我也找到了这个日志。我也不确定这意味着什么。

4 月 8 日 22:02:03 BTServer[61]:ATT 无法将 MTU 设置为 158,结果 BM3 STATUS 14

4 月 8 日 22:02:13 BTServer[61]:ATT 无法将 MTU 设置为 158,结果 BM3 STATUS 14