【问题标题】:Background Bluetooth with iOS deviceiOS 设备的后台蓝牙
【发布时间】:2015-01-26 01:16:59
【问题描述】:

我正在开发一个蓝牙外围设备以与我的 iOS 设备配合使用。我需要让 iOS 应用程序在后台接收数据并处理这些数据。通过 Apple 的 CoreBluetooth 框架,我可以看到如何使用后台执行模式。现在为了省电,我希望iOS设备只在某个时间连接到蓝牙外围设备(不需要用户交互)。我查看了 iOS 上的本地通知,它的功能非常有限,并且认为它不能满足我的需求。

那么有没有办法在下午 6 点唤醒应用程序并要求应用程序开始扫描蓝牙设备?然后在连接设备后执行其他代码?所有这一切都无需用户交互。

任何建议将不胜感激!

谢谢!

【问题讨论】:

    标签: ios bluetooth core-bluetooth


    【解决方案1】:

    在 iOS 中,您无法真正安排在特定时间发生的操作(除了本地通知,正如您所说,这不是您需要的)。

    您可以使用后台获取模式定期让您的应用检查新数据。您可以为应用的唤醒频率设置一个间隔(尽管这只是 iOS 的指南,并非严格的时间表)。

    当 iOS 调用您的应用程序委托performFetchWithCompletionHandler 方法时,您可以检查当前时间并决定是否要传输数据。如果没有,那么您可以快速返回UIBackgroundFetchResultNoData。如果您确实获得了新数据,那么您可以在返回 UIBackgroundFetchResultNewData

    之前检索它

    【讨论】:

      猜你喜欢
      • 2016-09-13
      • 2013-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-27
      • 2017-03-17
      • 1970-01-01
      相关资源
      最近更新 更多