ios LocationSensor 后台运行

Posted 竹鹿风清

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios LocationSensor 后台运行相关的知识,希望对你有一定的参考价值。

设置好,LocationSensor.active := true。

当按home键或黑屏后,程序将立马挂起。LocationSensorLocationChanged事件也不会响应。

有人说要两三秒才挂起,到我这却是立马,不知为啥。

在网上知道的解决方案:http://www.fmxexpress.com/learn-to-use-the-location-sensor-in-the-background-with-firemonkey-in-delphi-10-berlin-on-ios/

经测试后,发现它并不能完全做到后台一直运行。一般运行十来分钟就停止了。

具体解决方案:在上述网址基础(FLocater.setAllowsBackgroundLocationUpdates(True);)上,还需要加上

FLocater.setPausesLocationUpdatesAutomatically(False);

也就是

if TOSVersion.Check(9) and (FLocater <> nil) then

  begin
    {$IF Defined(BACKGROUNDUPDATES) and Defined(CPUARM64)} // for some reason, this function crashes in 32-bit
    FLocater.requestAlwaysAuthorization;
    FLocater.setAllowsBackgroundLocationUpdates(True);
    FLocater.setPausesLocationUpdatesAutomatically(False);
    {$ENDIF}
  end;

 

以上是关于ios LocationSensor 后台运行的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发:后台运行以及保持程序在后台长时间运行

iOS后台运行任务

IOS后台运行音频文件

iOS保持App真后台运行

ios应用后台运行

如何在 iOS 10 的后台运行 xmpp?