2017-01-19 1 views
2

GoogleマップのiOS SDKを使用して、現在地の青い点を表示しています。私はマップをインスタンス化を介してフラグをtrueに設定します。これは私の現在の位置のための青い点を示し行うisMyLocationEnabledがtrueに設定されていると、GMSMapViewはその場所データをどこから取得しますか?

self.mapView.isMyLocationEnabled = true 

が、私は、このデータの更新頻度についての情報を見つけることができません。私は、このオプションで位置のアップデートを受信して​​いる間、バッテリーの使用を心配しています。

  • GoogleマップSDKは独自のCLLocationManagerを使用していますか?
  • もしそうなら、どのパラメータを使用しますか?それは絶えず場所を更新しますか?
  • どの位置精度が使用されていますか?
  • ビューの画面をどのように処理するのですか?

答えて

1

私は最近、同じ質問がありましたが、Googleのドキュメントやどこかには何も見つかりませんでした。だからここ

が問題について私の考えとの観測で、あなたは

  1. 役に立つ何かを見つけるかもしれないそこのiOS CoreLocationを使用したことを除いて、ユーザーのGPS位置を取得する方法はありませんので、私たちは
  2. がそうであるように、彼らはそれを使用すると信じて
  3. 地図上のユーザーの位置がどれほど正確であるかに基づいて、私はGoogleマップが最高ではないにしても約10メートルの精度を使用していると思われます。実際の精度は、CLLocationインスタンスであるmyLocationプロパティから取得しようとすることができます。私はそれを試していない。そしておそらく、それはユーザーの場所を絶えず更新しますが、あなたは常に「許可」を持っていてもアプリケーションをバックグラウンドに保ちません。
  4. 私はロケーションマネージャがオフになっていて、バックグラウンドで対応するセルを塗りつぶしている間に、画面外にあってもユーザーの位置を使用してエネルギーバーを見ました。もちろん
    SDKの精度は低下する可能性がありますUIViewのサブクラスは、それが表示されるか隠されるかを検出することさえできます。私が見つけた唯一の方法は、偽
  5. にフラグを変更した

self.mapView.isMyLocationEnabled = false

あなたが質問に関して共有する何かを見つける場合には、戻って取得してください、それがお役に立てば幸いです。

関連する問題