7

位置追跡アプリケーションを開発しています。しかし、私は2つのことを行うことで位置情報の更新を停止しています...

  1. locationManager.removeUpdates(これ); と
  2. locationManager 参照を null に設定します。

これにより、必要に応じて位置座標が取得されなくなります...

しかし、問題は gps アイコンがまだ点滅していることです.. デバイスのバッテリーを消耗します.

だから、このGPS修正を止めるのを手伝ってください...

4

3 に答える 3

11

mapView に自分の位置やコンパスを表示する場合は、それらを無効にする必要があります。そうしないと、GPS はアクティブのままになります。

元 :

private MapView mapView;
private MyLocationOverlay Location;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.frame_layout);

    mapView = (MapView) this.findViewById(R.id.mapView);
    Location = new MyLocationOverlay(this, mapView);
    Location.enableMyLocation();
    Location.enableCompass();
    mapView.getOverlays().add(Location);
}

@Override
public void onDestroy() {
    Location.disableMyLocation();
    Location.disableCompass();
}
于 2012-05-11T12:49:50.073 に答える
3

上記の回答に加えて、あなたが説明した状況では、プロジェクトで使用されているサードパーティのライブラリ、特に一部の分析ライブラリを注意深く確認することをお勧めします。

FlurryAgent.setReportLocation(true)GPS アイコンが正しくインストールされていない (設定されてonEndSession()いて呼び出されなかった) Flurry によって引き起こされていることに気付く前に、私は大きな頭痛の種でしたonStop()

于 2014-04-15T10:28:16.310 に答える
2

エミュレータでこれをテストしている場合、これは完全に正常な動作です。ステータス バーの GPS アイコンが消えることはありません。

ハードウェアでこれをテストしている場合は、requestLocationUpdates()複数回呼び出した (そして他の更新を削除していない) か、ハードウェア上の何かが GPS を使用している可能性があります。

于 2012-04-13T14:04:38.827 に答える