0

達成しようとしていることの全体的な目的は、電話の設定ページから設定されたロケーション サービスの現在の有効または無効状態でプログラムを更新することです。

通常、アプリを起動すると、GeoCoordinateWatcher がボットのステータスと権限を問題なく取得します。この失敗に気付いている特定のケースは、設定ページに移動し、戻るボタンを押したままアプリを直接選択した場合です。アプリが戻ってきたときに、位置情報サービスの実際のステータスを読み取れません。

Application_Activated と MainPage_OnNavigatedTo はどちらも、ステータスと権限を再確認できるイベントです。この時点で、何をしても、アプリが強制終了されている間に設定を変更すると、間違った情報が表示されます。

これらのイベントでは、新しい GeoCoordinateWatcher クラスをスピンアップしましたが、アプリが最後にアクティブだったときのステータスと権限が引き続き報告されます。

実際の値を読み取るにはどうすればよいですか、または何か不足していますか?

4

1 に答える 1

1

ドキュメントによると、

「デバイスの地理座標を取得するために使用されるこのAPIは、バックグラウンドエージェントでの使用がサポートされていますが、リアルタイムデータの代わりにキャッシュされたロケーション値を使用します。キャッシュされたロケーション値は、デバイスによって15分ごとに更新されます。」

位置情報サービスを無効にした後、キャッシュされた場所を取得している可能性があります。
1時間後にはどうなりますか?

于 2012-07-12T16:18:20.530 に答える