ユーザーの位置を要求する BREW アプリを作成しています。
電話が位置を取得できない場合は、エラーを表示したいと思います。
電話が GPS 修正を取得する可能性が低いと判断する前に、コールバックが呼び出されるまでどのくらい待つ必要がありますか?
ユーザーの位置を要求する BREW アプリを作成しています。
電話が位置を取得できない場合は、エラーを表示したいと思います。
電話が GPS 修正を取得する可能性が低いと判断する前に、コールバックが呼び出されるまでどのくらい待つ必要がありますか?
コールドスタートが必要な場合、受信機はエフェメリスデータのフルセットをダウンロードする必要があります。このデータはGPS衛星から30秒サイクルでブロードキャストされ、30秒ごとに再送信されます。
したがって、失敗を宣言する前に待機するのに適切な時間は60〜90秒(2〜3エフェメリスサイクル)であると言えます。
http://www.navigadget.com/index.php/gps-knowledge/ttff-time-to-first-fix
デバイスにアルマナックのダウンロードが必要な場合、起動時間ははるかに長くなる可能性があることに注意してください(12.5〜15分程度)。これは、ファクトリTTFF(最初の修正までの時間)と呼ばれます。
携帯電話 - 特に、私は GPS 受信機を搭載した Motorola の携帯電話を持っていましたが、それがひどく苦手でした - 私のスタンドアロンの Bluetooth 受信機が 1 分もかからずに処理できるところを修正するのに約 5 分かかることがありました。
とにかく、固定タイムアウトの後に失敗を宣言するのはなぜですか? 妥当な時間 (たとえば 1 分) が経過した後、「GPS の修正はまだ利用できません。まだ試しています」というメッセージを表示し、ユーザーに栄養が与えられた場合はいつでもキャンセルできるようにします。上?あなたが提示しようとしている失敗メッセージに対して、ユーザーが何をすることを期待していますか?
45 ~ 90 秒。
詳細については、Wikipediaの GPS Time To First Fixの記事を参照してください。
しかし、ユーザーが実際に衛星をいつ見ることができるかどうかを知ることはできません。プログラムを開始したときにまだ中にいる可能性があるため、Matthew Vines によって提案されたアプローチは、一定の遅延よりもはるかに優れています。
リンクの確立に失敗したことをユーザーに通知する間隔 (20 秒または 30 秒など) を増やしてから、リンクの確立を停止するオプションをユーザーに提供する場合があります。彼らがあなたを止めるまで、または設定された回数の繰り返しが成功するまで、それを続けてください(たとえば、5〜10回の繰り返し)。