状況によっては場所の対策を行う必要があり、すぐに(時間通りに)読む必要がある「コードネームアプリ」を作成しました。GPSを使用して直近の場所を読み取る方法
この目的を達成するために、DisplayオブジェクトからメソッドgetLocationSync(long timeout = 10000)を使用しています。コードは、そのようなものです:
Location loc = LocationManager
.getLocationManager()
.getCurrentLocationSync(10000);
このメソッドのjavadocは、それは現時点では対策を実行し、助言言う: 「結果が返されるまで、あなたのようなものを使用する場合がありますので、彼の方法をブロックすることに注意してくださいこれが実行されている間のInfiniteProgress "
ご覧のとおり、10秒間のタイムアウトでメソッドを呼び出しました。
実際、私は応答としてLocationオブジェクトを取得しますが、返されるメジャーは即時のメジャーではありません。この方法では、4分の間に電話機の位置を大きく変更しても、しばらくの間(約4または5分)同じ結果が繰り返されます。
私が気づいたもう一つのことは、「getCurrentLocationSync」と呼ばれるほとんどの時間は、「InfiniteProgress」は表示されません。コールはすぐに戻ります。
何か間違っていますか? 必要な場所を実際に測定するには、何が必要ですか?