Geolocator.StatusChanged イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ジオロケーターの機能が更新された場所の変更を提供 場合に発生します。
// Register
event_token StatusChanged(TypedEventHandler<Geolocator, StatusChangedEventArgs const&> const& handler) const;
// Revoke with event_token
void StatusChanged(event_token const* cookie) const;
// Revoke with event_revoker
Geolocator::StatusChanged_revoker StatusChanged(auto_revoke_t, TypedEventHandler<Geolocator, StatusChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<Geolocator,StatusChangedEventArgs> StatusChanged;
function onStatusChanged(eventArgs) { /* Your code */ }
geolocator.addEventListener("statuschanged", onStatusChanged);
geolocator.removeEventListener("statuschanged", onStatusChanged);
- or -
geolocator.onstatuschanged = onStatusChanged;
Public Custom Event StatusChanged As TypedEventHandler(Of Geolocator, StatusChangedEventArgs)
イベントの種類
Windows の要件
アプリの機能 |
location
ID_CAP_LOCATION [Windows Phone]
|
例
このコード例では、StatusChanged イベントの処理方法を示します。
Geolocator オブジェクトは、StatusChanged イベントをトリガーして、ユーザーの場所の設定が変更されたことを示します。 このイベントは、引数の
using Windows.UI.Core;
...
async private void OnStatusChanged(Geolocator sender, StatusChangedEventArgs e)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
// Show the location setting message only if status is disabled.
LocationDisabledMessage.Visibility = Visibility.Collapsed;
switch (e.Status)
{
case PositionStatus.Ready:
// Location platform is providing valid data.
// notify user: Location platform is ready
break;
case PositionStatus.Initializing:
// Location platform is attempting to acquire a fix.
// notify user: Location platform is attempting to obtain a position
break;
case PositionStatus.NoData:
// Location platform could not obtain location data.
// notify user: Not able to determine the location
break;
case PositionStatus.Disabled:
// The permission to access location data is denied by the user or other policies.
// notify user: Access to location is denied
// Clear cached location data if any
break;
case PositionStatus.NotInitialized:
// The location platform is not initialized. This indicates that the application
// has not made a request for location data.
// notify user: No request for location is made yet
break;
case PositionStatus.NotAvailable:
// The location platform is not available on this version of the OS.
// notify user: Location is not available on this version of the OS
break;
default:
// unknown result
break;
}
});
}
注釈
イベント ハンドラーに渡される StatusChangedEventArgs オブジェクトを使用して、イベントに関する情報にアクセスできます。
ジオフェンスを使用する場合は、GeofenceMonitor'StatusChanged イベントを使用して、Geolocator クラスからのこのイベントではなく、場所のアクセス許可の変更を監視します。 GeofenceMonitorStatusDisabled は、DisabledPositionStatus と同じです。両方とも、アプリに場所へのアクセス許可がないことを示します。
適用対象
こちらもご覧ください
- StatusChangedEventArgs
- 現在の場所の を取得する
- 現在の場所の を取得する
- ジオフェンス を設定する
- 位置情報のサンプル