【问题标题】:Accessing all three BLE advertisement channels individually in iOS在 iOS 中单独访问所有三个 BLE 广告通道
【发布时间】:2017-06-21 07:21:52
【问题描述】:

蓝牙低功耗使用 40 个通道,每个通道 2 MHz 宽,跨越 未经许可的 2.4 GHz 无线电频段。在 40 个频道中,BLE 广告在三个频道上播放。这些广告频道名义上标记为 37、38 和 39,并且分别在 2402 MHz、2426 MHz 和 2480 MHz 处间隔很大。

在 iOS 的核心位置,所有扫描到的 BLE 信标都列在一个 NSArray 中,并且可以轻松访问每个信标的 RSSI 值。例如。

CLBeacon* beacon1 = [beacons firstObject]; NSNumber *RSSI = [NSNumber numberwithFloat:beacon1.RSSI];

这里,RSSI 值是 CoreLocation 提供的“平均”值。此外,此 RSSI 实时波动很大。

现在,我的问题是,iOS(objective-C)中是否有任何方法/框架可以访问每个广告频道,以便我们可以从每个频道获取 RSSI 值?

已发表的期刊 [http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=7103024&tag=1] 展示了所有三个广告渠道的 RSSI 结果。该论文称,该功能(分别访问三个广告频道)在 iOS 7.0 之后可用。但是,我无法弄清楚在 iOS 中访问三个广告频道的确切方法。

提前谢谢你。

【问题讨论】:

  • 没有公共 API 可以为您提供此信息。
  • 有这方面的消息吗?

标签: ios objective-c bluetooth-lowenergy rssi


【解决方案1】:

一般来说,Apple 不会披露此类信息。没有公共 API 可用于开发 IOS 的核心组件。由于 android 是一个开源平台,我们可以找到许多用于访问传感器和每个组件的源代码,但 Apple 并非如此。此外,这可能是出于安全原因,苹果一直保持到今天。

【讨论】:

    猜你喜欢
    • 2017-12-31
    • 2023-03-31
    • 1970-01-01
    • 2014-05-15
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多