次のように、特定のプロバイダーを提供する場所のリスナーを作成する例をたくさん見つけました。
LocationManager lm =
(LocationManager) getSystemService(Context.LOCATION_SERVICE);
LocationListener ll = new mylocationlistener();
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, ll);
ただし、正確な場所は必要ありませんが、可能な限り最善のものを使用します。プロバイダーごとにリスナーを作成せずに、その時点で利用可能な最適なリスナーを作成する方法はありますか?
たとえば、利用可能な場合は GPS を使用し、利用できない場合はネットワークなどを使用します。また、これはウィジェットなので、利用可能なものを確認したくありません。ウィジェットは長時間稼働するため、そのためのリスナーを作成します。プロバイダーの有効化/無効化を通じて存続する可能性があります。
助けてくれてありがとう