Geolocator.GetGeopositionAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
GetGeopositionAsync() |
デバイスの現在の場所を取得する非同期操作を開始します。 |
GetGeopositionAsync(TimeSpan, TimeSpan) |
デバイスの現在の場所を取得する非同期操作を開始します。 |
GetGeopositionAsync()
デバイスの現在の場所を取得する非同期操作を開始します。
public:
virtual IAsyncOperation<Geoposition ^> ^ GetGeopositionAsync() = GetGeopositionAsync;
/// [Windows.Foundation.Metadata.Overload("GetGeopositionAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<Geoposition> GetGeopositionAsync();
[Windows.Foundation.Metadata.Overload("GetGeopositionAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<Geoposition> GetGeopositionAsync();
function getGeopositionAsync()
Public Function GetGeopositionAsync () As IAsyncOperation(Of Geoposition)
戻り値
完了時に、検出された場所を示す Geoposition を返す非同期操作。
- 属性
Windows の要件
アプリの機能 |
location
ID_CAP_LOCATION [Windows Phone]
|
注釈
アプリに場所のアクセス許可がない場合、または場所データが取得されていない状態でタイムアウトした場合、このメソッドは例外をスローします。 したがって、これらの一般的な例外ケースを処理できるように、try/catch ステートメント内で メソッドを呼び出す必要があります。
このメソッドは、コネクト スタンバイの場合を除き、60 秒後にタイムアウトします。 コネクト スタンバイ中は、 Geolocator オブジェクトをインスタンス化できますが、 Geolocator オブジェクトでは集計するセンサーが見つからず、GetGeopositionAsync の呼び出しは 7 秒後にタイムアウトします。 タイムアウトすると、 StatusChanged イベント リスナーは NoData 状態で 1 回呼び出され、 PositionChanged イベント リスナーは呼び出されません。
ユーザーが設定アプリの位置情報に関するプライバシー設定で位置情報に関するプライバシーを設定します。 次の場合にのみ、アプリでユーザーの位置情報にアクセスできます。
- このデバイスの場所...がオンになっている (Windows 10 Mobileには適用されません)
- 位置情報サービス設定の [位置情報] が オン になっている
- [位置情報を使うことができるアプリを選ぶ] で、アプリが オン になっている
重要
Windows 10 以降では、ユーザーの場所にアクセスする前に RequestAccessAsync メソッドを呼び出します。 このときに、アプリをフォアグラウンドで実行し、RequestAccessAsync を UI スレッドから呼び出す必要があります。 その後、アプリは、例外をスローすることなく、アクセス許可のないケースを処理できます。
こちらもご覧ください
適用対象
GetGeopositionAsync(TimeSpan, TimeSpan)
デバイスの現在の場所を取得する非同期操作を開始します。
public:
virtual IAsyncOperation<Geoposition ^> ^ GetGeopositionAsync(TimeSpan maximumAge, TimeSpan timeout) = GetGeopositionAsync;
/// [Windows.Foundation.Metadata.Overload("GetGeopositionAsyncWithAgeAndTimeout")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<Geoposition> GetGeopositionAsync(TimeSpan const& maximumAge, TimeSpan const& timeout);
[Windows.Foundation.Metadata.Overload("GetGeopositionAsyncWithAgeAndTimeout")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<Geoposition> GetGeopositionAsync(System.TimeSpan maximumAge, System.TimeSpan timeout);
function getGeopositionAsync(maximumAge, timeout)
Public Function GetGeopositionAsync (maximumAge As TimeSpan, timeout As TimeSpan) As IAsyncOperation(Of Geoposition)
パラメーター
戻り値
完了時に、検出された場所を示す Geoposition を返す非同期操作。
- 属性
Windows の要件
アプリの機能 |
location
ID_CAP_LOCATION [Windows Phone]
|
注釈
最新の場所が許容範囲内の場合、場所はすぐに返されます。 それ以外の場合、場所は次の変更まで返されません。 場合によっては、アプリは、指定された maximumAge 値より古い場所データを受け取る場合があります。 これは、必要な精度設定に基づいて追加の年齢値が計算され、アプリで 2 つの年齢のいずれかが大きい方を使用するためです。 たとえば、既定の精度が 500 メートルの場合は、最大経過時間が 30 秒に対応しているとします。 その場合、 maximumAge を 10 秒に設定した場合でも、アプリは 20 秒の古いデータを受け取る可能性があります。