Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在iOS下打开网页后继续接收蓝牙数据_Ios_Swift_Bluetooth_Background_Focus - Fatal编程技术网

如何在iOS下打开网页后继续接收蓝牙数据

如何在iOS下打开网页后继续接收蓝牙数据,ios,swift,bluetooth,background,focus,Ios,Swift,Bluetooth,Background,Focus,我有一个可以工作的iOS/Swift应用程序,可以读取didUpdateValueFor()中蓝牙扫描仪推送的数据,并将其发布到网页上。我正在使用UIApplication.shared.openURL()发布到页面,效果很好。但是,一旦页面打开,应用程序将停止接收读取,直到再次获得焦点。我想能够保持扫描和张贴到页面,而页面显示和应用程序是在后台。有没有一种方法可以让蓝牙信息即使在没有焦点的情况下也能传到应用程序 您不应该使用openURL,因为您无法通过该连接流式传输数据。你的应用程序需要使用

我有一个可以工作的iOS/Swift应用程序,可以读取didUpdateValueFor()中蓝牙扫描仪推送的数据,并将其发布到网页上。我正在使用UIApplication.shared.openURL()发布到页面,效果很好。但是,一旦页面打开,应用程序将停止接收读取,直到再次获得焦点。我想能够保持扫描和张贴到页面,而页面显示和应用程序是在后台。有没有一种方法可以让蓝牙信息即使在没有焦点的情况下也能传到应用程序

您不应该使用openURL,因为您无法通过该连接流式传输数据。你的应用程序需要使用网络套接字直接打开与web服务器的连接。我希望该页面显示在浏览器中,以便用户可以与该页面和发布的数据进行交互。它是一个简单的URL,类似于“”。我有一个Android版本的应用程序,它可以在同一个选项卡中重复打开页面。不过,我在Android下的单独线程中启动了浏览器。不确定这在iOS下是否有效,因为苹果对用户界面有着严格的控制。一旦你离开应用程序并打开safari,你就不能再发送任何数据了。您可以在后台接收蓝牙数据,但不能再次调用
openURL
,因为您只能在应用程序位于前台时执行此操作,并且您无法向网页发送更多数据,因为Safari拥有网络连接,而不是应用程序。您可以在应用程序中使用
WKWebView
,而不是启动Safariugh。谢谢你的帮助。是的,正如我所说的,WKWebView让这变得非常简单。