日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

解决iOS地图持续定位耗电问题

發布時間:2024/4/15 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 解决iOS地图持续定位耗电问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

地圖位置刷新的代理didUpdateLocations會持續調用,手機非常耗電

但是在實際開發中,有一些APP確實需要用到持續定位的功能,比如:運動類, 導航類, 天氣類等等

?

如何進行持續定位呢?保證持續定位的前提下降低APP的耗電量呢?

?

?

?

distanceFilter:距離過濾器

在生成更新事件之前, 設備的最小距離(以米為單位), 必須是水平移動.

這句就是設置這個值會在執行didUpdateLocations方法前判斷水平移動距離是否達到這個值

?

?

?

?

?當然僅僅這樣還是不夠的. 我們還可以設置GPS的精度

?

譯文:

實例屬性

?

desired Accuracy

位置數據的準確性。

概述

接收機盡力達到要求的準確度;?然而,實際的準確性并不保證。

您應該為此屬性指定適合您的使用情景的值。例如,如果您僅在一公里內需要當前位置,您應該指定k?CLLocation?Accuracy?Kilometer而不是k?CLLocation?Accuracy?Best?For?Navigation。確定更精確的位置需要更多的時間和更多的功率。

當請求高精度位置數據時,由位置服務傳遞的初始事件可能不具有您請求的準確性。定位服務盡快提供初始事件。然后,隨著數據可用,您可以根據需要繼續確定所請求的準確性,并提供其他事件。

對于iOS和MacOS,此屬性的默認值為k?CLLocation?Accuracy?Best。對于watchOS,默認值為k?CLLocation?Accuracy?Hundred?Meters。

此屬性僅與標準位置服務結合使用,并且在監視重大位置更改時不使用。

?

?

?

  /**

? ? ?

?? ? kCLLocationAccuracyBest;? ? ? ? ? ? ? //最好的,米級

?? ? kCLLocationAccuracyNearestTenMeters;? //十米

?? ? kCLLocationAccuracyHundredMeters; ? ? //百米

?? ? kCLLocationAccuracyKilometer; ? ? ? ? //一公里

?? ? kCLLocationAccuracyThreeKilometers; ? //三公里

?? ? */

?? ?

? ? //持續定位

? ? /**

?? ? 1.開啟開始定位之后,不關閉,讓其持續定位

?? ? 2.設置距離篩選器:坐標移動到指定距離才會調用代理方法

?? ? 3.設置精準度:通過降低計算的過程(GPS),來達到省電的目的

?? ? **/

?? ?

? ? //iOS定位方法:1.GPS全球定位系統(24顆) ? 2.移動基站? 3.Wifi

? ? //傳入的是double值,單位是米,這里傳入10,表示距離移動超過十米,才會調用代理方法

? ? self.locationManager.distanceFilter = 10;

?? ?

? ? //GPS精準度? 默認值:kCLLocationAccuracyBest ? 最精準:kCLLocationAccuracyBestForNavigation

? ? self.locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;

?

轉載于:https://www.cnblogs.com/quxiangfu/p/6622551.html

總結

以上是生活随笔為你收集整理的解决iOS地图持续定位耗电问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。