Android 和 iOS 如何扫描蓝牙信标而不出现电池问题?

2024-04-08

如果我想在 Android 或 IOS 中开发自己的 iBeacon 服务,它必须实用。这意味着客户可以使用我的服务而不会出现电池短缺的情况。

我认为即使 iBeacon 技术基于蓝牙低功耗,它仍然可能缺乏电池。这是因为应用程序必须始终运行才能扫描 iBeacon 设备。

据我所知,iOS 对于电池问题有自己的解决方案。当 IOS 应用程序检测到 iBeacon 设备时,它会在后台运行,并且 IOS(而非应用程序)会自行扫描特定的 UUID,而不是附近的所有 UUID。这就是他们节省能源的方式。我对吗?

但对于Android,不提供任何电池问题的解决方案。更重要的是, 当 Android 应用程序检测到 iBeacon 设备时,它会扫描附近的所有 UUID,并处理所有内容,而不是 Android 操作系统。这是正确的吗?

所以在我开始开发自己的服务之前,我担心电池问题。 电池可以吗? 有什么好的解决办法可以分享吗?你们怎么解决这个问题?


The Android iBeacon 库专业版 http://developer.radiusnetworks.com/ibeacon/android/pro/download.html配有自动节电装置当应用程序在后台运行时减慢扫描速度以节省电量 http://developer.radiusnetworks.com/ibeacon/android/pro/battery_manager.html。开源 Android iBeacon 库还允许配置前台和后台蓝牙扫描速率,并提供调用方法来告知库应用程序何时位于前台和后台。

在 iOS 上,电池节省策略是类似的。当前台没有应用程序对 iBeacons 进行测距时,不会持续执行蓝牙扫描。后台扫描的确切频率尚未公布,但我测量过它每 15 分钟发生一次 http://developer.radiusnetworks.com/2014/03/12/ios7-1-background-detection-times.html在装有 iOS 7.1 的 iPhone 4S 上。

扫描特定 UUID 对电池寿命没有影响。在操作系统级别,蓝牙 LE 扫描会查找任何正在进行广告的蓝牙 LE 设备,无论它是 iBeacon 还是具有特定的 UUID。特定 UUID 的过滤器由更高级别的软件处理。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 和 iOS 如何扫描蓝牙信标而不出现电池问题? 的相关文章

  • 如何让我的应用程序音频在说话时很好地中断 iPhone 音频

    我的 iOS 7 应用程序会在必要时发出文本声音 我想做的是让用户在我的应用程序运行时收听他的音乐或播客 或任何其他使用音频的应用程序 预期的行为是 当我的应用程序说话时 其他音频会混合或闪避 然后其他音频会立即恢复到初始级别 我尝试了很多
  • 如何使用node.js从蓝牙设备接收数据

    我是 javascript 和 node js 的新手 目前从事医疗项目 首先我将解释我的工作 我必须从蓝牙设备接收数据 正常血压率 脉搏率 并使用 node js 在 Web 应用程序中显示读数 我不知道如何从蓝牙设备 病人监护仪 接收数
  • iBeacons 的三角测量示例

    我正在研究使用多个 iBeacons 进行 粗略 室内定位的可能性 该应用程序是一种 博物馆 设置 能够更容易地形成一个包含不同对象位置的网格 然后形成单独的信标 尽管这也不是不可能的 是否有使用多个信标对某种位置进行三角测量的示例 经验
  • 与 libbluetooth.so 链接

    在 Ubuntu 14 04 上 我尝试做一个蓝牙设备列表的小示例 但在编译这个简约演示时 我遇到了一个关于与蓝牙共享库链接的简单问题http people csail mit edu albert bluez intro c404 htm
  • iOS 14 - 当精确位置权限被拒绝时,如何让 iBeacon 唤醒应用程序?

    我之前在使用 iOS 14 0 时遇到了以下问题 通过后台位置权限我可以 注册iBeacon区域监控 从应用程序切换器杀死该应用程序 点击屏幕即可看到应用程序在控制台中重新启动 应用程序正在运行但不在应用程序切换器中 使用 iOS14 重新
  • 为什么我的充电状态接收器总是返回 false?

    我试图检测用户何时插入 或拔出 设备进行充电 在我的接收器中 当我确定它是否已插入时 我总是得到 错误 的状态读数 这是我的代码 在清单中
  • 蓝牙连接无需配对

    连接蓝牙设备的正常方式是通过配对 我们需要以非正常方式连接到设备 仅使用蓝牙 MAC 地址 我们不希望系统提示输入 PIN 我们知道该设备支持此技术 但我们找不到在 Android 上执行此操作的方法 缩写代码如下所示 String mac
  • 在c#中通过设备名称获取蓝牙设备的COM端口

    我用 C 编写一些代码来获取映射具有特定名称的蓝牙设备的 COM 端口 我尝试了几种与列出的类似的解决方案here https stackoverflow com questions 25908734 get name of bluetoo
  • 如何通过蓝牙将文件从Android发送到电脑

    任何人都可以给出蓝牙服务器客户端的工作示例 从Android到计算机 我想将数据从 Android 手机传输到 C 应用程序 现在我使用下面的 Android 代码 效果很好 但它仍然无法将数据传输到我的计算机 可能无法写入这些数据 任何人
  • Android 在我自己的应用程序中以编程方式隐藏鼠标指针

    我知道这里有一个类似的问题 以编程方式在 Android 屏幕上移动鼠标指针 https stackoverflow com questions 7695258 moving mouse pointer on android screen
  • 在 Android 上的活动之间保持蓝牙连接 [重复]

    这个问题在这里已经有答案了 可能的重复 Android 如何将蓝牙连接传递给另一个活动 https stackoverflow com questions 6872970 android how to pass a bluetooth co
  • Bonjour 通过蓝牙无需 Gamekit ?

    我想知道在 iPhone OS 3 0 或更高版本中直接通过蓝牙使用 bonjour 而不使用 GameKit 的可能性 谁能提供任何例子吗 只需宣布服务 就像tc 下面已经说了 https stackoverflow com q 3845
  • 蓝牙连接:MODE_IN_CALL 与 MODE_IN_COMMUNICATION

    我有一个应用程序需要连接到无线蓝牙耳机来收集原始音频 MODE IN CALL 适用于某些设备 MODE IN COMMUNICATION 适用于其他设备 麦克风可以工作 但我失去了音频 反之亦然 我使用的是 Nexus 5x 和 Sams
  • iOS Swift - 使用蓝牙外部扬声器时音质较差

    我正在使用从 url 广播应用程序 流式传输的 iOS 应用程序 一旦我尝试通过外部扬声器或汽车音响系统等蓝牙设备从应用程序进行流传输 音频质量就会非常差且刺耳 当从 iOS 设备本身播放时 一切听起来都很好 扬声器和耳机 override
  • 附近连接 2.0:混合不同策略?

    我一直在尝试新的安卓 附近连接 v2 0 https android developers googleblog com 2017 07 announcing nearby connections 20 fully htmlAPI 并对用于
  • 使用蓝牙调用应用程序

    我们可以使用蓝牙从一个 Android 设备中调用另一台 Android 设备中的应用程序吗 如果可以的话流程是什么 不 您不能从一个 Android 设备调用另一个应用程序 除非两个应用程序都使用蓝牙权限并进行配置
  • 从 iBeacon 接收 BLE 信号到 Bluno(arduino with BLE)

    我想从 iBeacon 到 Bluno 接收 rssi 信号和 UUID Arduino 板具有 BLE 对此有一些疑问 有没有从 BLE 到 BLE 接收 UUID 和 rssi 的解决方案 两个BLE设备可以互相通信吗 我想找一些网站来
  • 在广播接收器响应 Intent.ACTION_BATTERY_CHANGED 之前获取电池电量

    我的程序中有一个广播接收器 可以对电池电量做出反应 如下所示 private BroadcastReceiver mBatInfoReceiver new BroadcastReceiver Override public void onR
  • 如何从本地电脑获取蓝牙mac地址?

    我想获取运行我的应用程序的电脑上蓝牙设备的 MAC 地址 我已经尝试过以下方法 private void GetMacAddress string macAddresses foreach NetworkInterface nic in N
  • 在 Android 中通过蓝牙接收音频

    我想创建一个能够接收音频流的 Android 应用程序 我想过使用 A2DP 配置文件 但似乎 Android 不支持 A2DP 接收器 看起来有很多人正在寻找这个问题的解决方案 但是接收普通的比特流 然后在应用程序中将数据转换为音频呢 我

随机推荐