gpt4 book ai didi

ios - 当应用程序在后台运行时使用非核心蓝牙框架访问蓝牙 LE 设备

转载 作者:行者123 更新时间:2023-11-28 22:06:25 25 4
gpt4 key购买 nike

我的 iOS 应用程序通过专有 SDK(即非核心蓝牙框架)与 BTLE 设备通信。配对也通过此 SDK(即插即用代码)进行。 SDK 服务有许多非标准的蓝牙服务和特性。

一旦用户切换到另一个应用程序,即主应用程序在后台运行,我就无法再访问 SDK 服务。但是,即使我的应用程序在后台运行,我仍能继续从设备接收数据,这一点至关重要。

根据我的研究,Apple 只允许很少的背景模式,列在这里 https://developer.apple.com/library/ios/documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html (在页面中搜索“UIBackgroundModes”),例如音频、位置、voip、获取、远程通知、报摊内容、外部附件、蓝牙中心、蓝牙外设

由于 SDK 使用自己的蓝牙框架和许多非标准蓝牙服务,我必须选择什么选项(如果有的话)让我的应用程序即使在后台运行时也能以连续的时间间隔持续访问服务?

我正在考虑在后台使用定位服务。我有一个疑问:

  1. 如果 Apple 发现定位服务在我的应用中用处很少或没有用处,那么他们可能会拒绝它?

  2. 如果我的 iPhone 在平面上,那么它不会调用 didUpdateLocation 方法,在这种情况下我无法与 SDK 通信?

请建议,在后台运行我的应用程序的最佳方式是什么,这样我就不会遇到任何问题。

最佳答案

在 XCode 中,转到您的项目->功能->背景模式并将背景模式标记为开。 Mark 还使用蓝牙 LE 配件:

enter image description here

关于ios - 当应用程序在后台运行时使用非核心蓝牙框架访问蓝牙 LE 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23871461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com