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 메서드가 호출 되 면 데이터를 얻기를 시작 합니다. 사용 권한을 데이터 사용 가능 해지면 클라이언트에 부여 된, 데이터 동기적으로 액세스할 수 있습니다 하 고 이벤트를 처리 하는 경우 비동기적으로 전달 됩니다.
Windows 7 센서 및 위치 플랫폼을 사용 하지 않으면 때 Start 가 호출 Start 즉시 반환 됩니다 PositionChanged 이벤트를 발생 하지 것입니다, 그리고 및에서 반환 된 위치를 Location 속성의 Position 포함 됩니다 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