タクシー予約アプリケーションで顧客(タクシーの運転手)のデバイスで位置情報サービスを有効にしたときに、顧客(タクシーの運転手)がどのように体験するかを理解するためのコードを作成しました。同じリスナーでネットワークプロバイダーとGPSプロバイダーの両方を使用して位置情報サービスを有効にしました。
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,
// God.KM20TIME, God.KM20DISTANCE, (LocationListener) updates);
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, God.KM20TIME,
God.KM20DISTANCE, (LocationListener) updates);
バッテリーが通常よりもはるかに早く切れました。また、電話が通常よりも熱くなっていました。しかし、私が期待していた一貫性は本当に低かった。私はGPSを使用せず、ネットワークプロバイダーのみを使用することにしました。タクシー予約アプリを作成しているので、タクシーのおおよその場所を知る必要があります。キャブが約15分前のおよそ(300メートル)の場所にあったことを知っていても、私は良いはずです。したがって、両方のプロバイダーを使用してこのロジックを過剰に設計しないという私の決定は正しいと思います。誰かがここで別の経験に関係することができるのだろうか?私は何かが足りないのですか?