大约20分钟后,位置更新将停止在后台交付给应用程序。应用程序未关闭,因为当我单击应用程序图标时,它以我离开的状态从后台恢复,然后更新再次开始。我还可以看到,任务栏右上角显示的是我得到更新的小箭头,当它消失时我没有收到更新。我每5秒钟获取一次GPS数据,将其保留在队列中,每分钟我通过tcp套接字连接到服务器并发送这些更新。当右上角的箭头消失时,我的应用程序不再连接到服务器(甚至应该包含空数据),因此我认为该应用程序处于某种挂起模式。
我已经用Qt / QML编写了应用程序,然后将项目转换为XCode。我已经在功能中检查了“背景模式”(位置更新,后台获取)。我在plist文件中的UIBackgroundModes获取,定位。我也有NSLocationWhenInUse NSLocationAlways和NSLocationAlwaysAndWhenInUse UsageDescription和应用程序在系统检查中 设置-> myapp->位置->始终
也许问题是应用已暂停或进入睡眠状态。在其他一些项目中,我使用了一些代码来防止一些简单的代码使屏幕褪色:
dbUrl = "jdbc:jtds:sqlserver://localhost:1433;ssl=require";
是这种情况吗?但是我不想一直打开屏幕。
它应该以1.5分钟的时间间隔继续向我的服务器发送gps位置信息。 我正在iOS 12.3.1和Qt 5.12.3上进行测试
预先感谢 马雷克