GeoCoordinateWatcher.Start メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在の場所プロバイダーからのデータの取得を示します。 このメソッドは、PositionChanged イベントを有効にし、Position プロパティにアクセスできるようにします。
オーバーロード
Start() |
現在の場所プロバイダーからのデータの取得を示します。 このメソッドは、PositionChanged イベントを有効にし、Position プロパティにアクセスできるようにします。 |
Start(Boolean) |
現在の場所プロバイダーからのデータの取得を示します。 このメソッドは、PositionChanged イベントを有効にし、Position プロパティにアクセスできるようにします。 |
Start()
現在の場所プロバイダーからのデータの取得を示します。 このメソッドは、PositionChanged イベントを有効にし、Position プロパティにアクセスできるようにします。
public:
virtual void Start();
public void Start ();
abstract member Start : unit -> unit
override this.Start : unit -> unit
Public Sub Start ()
実装
例
次のプログラムは、 が呼び出された後 Start に発生する最初の場所の更新を処理します。
using System;
using System.Device.Location;
namespace GetLocationDataUpdateOnce
{
class Program
{
static void Main(string[] args)
{
CLocation myLocation = new CLocation();
myLocation.GetLocationDataEvent();
Console.WriteLine("Enter any key to quit.");
Console.ReadLine();
}
class CLocation
{
GeoCoordinateWatcher watcher;
public void GetLocationDataEvent()
{
this.watcher = new GeoCoordinateWatcher();
this.watcher.PositionChanged += new EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(watcher_PositionChanged);
this.watcher.Start();
}
void watcher_PositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e)
{
PrintPosition(e.Position.Location.Latitude, e.Position.Location.Longitude);
// Stop receiving updates after the first one.
this.watcher.Stop();
}
void PrintPosition(double Latitude, double Longitude)
{
Console.WriteLine("Latitude: {0}, Longitude {1}", Latitude, Longitude);
}
}
}
}
Imports System.Device.Location
Module GetLocationEvent
Public Class CLocation
Private WithEvents watcher As GeoCoordinateWatcher
Public Sub GetLocationDataEvent()
watcher = New System.Device.Location.GeoCoordinateWatcher()
AddHandler watcher.PositionChanged, AddressOf watcher_PositionChanged
watcher.Start()
End Sub
Private Sub watcher_PositionChanged(ByVal sender As Object, ByVal e As GeoPositionChangedEventArgs(Of GeoCoordinate))
PrintPosition(e.Position.Location.Latitude, e.Position.Location.Longitude)
' Stop receiving updates after the first one.
watcher.Stop()
End Sub
Private Sub PrintPosition(ByVal Latitude As Double, ByVal Longitude As Double)
Console.WriteLine("Latitude: {0}, Longitude {1}", Latitude, Longitude)
End Sub
End Class
Public Sub Main()
Dim myLocation As New CLocation()
myLocation.GetLocationDataEvent()
Console.WriteLine("Enter any key to quit.")
Console.ReadLine()
End Sub
End Module
注釈
このメソッドを呼び出すと、現在の場所プロバイダーからのデータの取得が開始されます。 現在の場所プロバイダーが、有効期間とすべてのプロバイダー、アプリケーションまたはアプリケーション、および電力消費量によって要求された精度場所プロバイダーに関連付けられたパフォーマンスに与える影響とデータの精度などの要因に基づいて選択されています。 たとえば、GPS デバイスが屋内で衛星信号を失い、Wi-Fi 三角形分割プロバイダーがコンピューター上で最も正確なプロバイダーになると、現在の場所プロバイダーが時間の経過と同時に変化する可能性があります。
メソッドの呼び出し時 Start に現在の優先順位付けされた場所プロバイダーにデータがない場合は、データの取得が開始されます。 データが使用可能になったときにアクセス許可がクライアントに付与されている場合は、データに同期的にアクセスでき、イベントが処理されている場合は非同期的に配信されます。
が呼び出されたときに Start Windows 7 センサーと場所プラットフォームが無効になっている場合、Startすぐにが返されます。PositionChangedイベントは発生せず、 の Position プロパティによってLocation返される場所には が含まれますUnknown。
現在の優先順位付けされた場所プロバイダーにデータがある場合は、すぐに同期的に使用でき、イベントが処理されている場合は非同期的に配信されます。
呼び出し元のアプリケーションに場所プロバイダーのデータにアクセスするためのアクセス許可がない場合、ユーザーはアクセス許可を付与または拒否するダイアログ ボックスが表示されます。 ダイアログ ボックスはモードレスになります。
適用対象
Start(Boolean)
現在の場所プロバイダーからのデータの取得を示します。 このメソッドは、PositionChanged イベントを有効にし、Position プロパティにアクセスできるようにします。
public:
virtual void Start(bool suppressPermissionPrompt);
public void Start (bool suppressPermissionPrompt);
abstract member Start : bool -> unit
override this.Start : bool -> unit
Public Sub Start (suppressPermissionPrompt As Boolean)
パラメーター
- suppressPermissionPrompt
- Boolean
アクセス許可ダイアログ ボックスを表示しない場合は true
。アクセス許可がまだ与えられていない場合にアクセス許可ダイアログ ボックスを表示する場合は false
。
実装
適用対象
.NET