我有一个应用程序,可以保持与BLE设备的活动连接。BLE设备会不时地向应用程序发送数据,而我希望应用程序将这些数据发送到服务器。
请注意,应用程序可以处于前台、后台、iPhone锁定或任何可能的状态。
我看到的是,如果应用程序在后台(过了一段时间),当iOS从我的硬件设备上通过新的BLE更新唤醒应用程序时,网络请求立即失败(就像它没有授予网络访问权限一样)。
有人知道如何处理这个问题吗?注意,UIBackgroundTask似乎不起作用,因为它们只能从前台请求(对吧?),在我的例子中,当BLE更新命中手机时,应用程序已经在后台了。
有什么想法吗?
发布于 2020-08-18 18:06:49
我最终采用的方法是使用后台配置的URLSession连接。使用后台模式的URLSession,它将请求操作系统上传数据,并在完成后通知应用程序,而不是让应用程序负责上传数据。
https://stackoverflow.com/questions/63016680
复制相似问题