내 앱에서이 작업을 수행해야하는데 방법을 잘 모르겠습니다. 현재 저는 Geolocator와 Timer를 사용하여 달성하려고합니다.
이 방법의 도움으로 현재를 저장된 위치와 비교하여 움직임을 감지합니다.
public const double EARTH_RADIUS_M = 6371000
private static double ToRad(double val)
{
return val * (Math.PI / 180);
}
public static double GetDistanceM(double lat0, double lng0, double lat1, double lng1)
{
double dLat = ToRad(lat1 - lat0);
double dLon = ToRad(lng1 - lng0);
double a = Math.Pow(Math.Sin(dLat / 2), 2) +
Math.Cos(ToRad(lat0)) * Math.Cos(ToRad(lat1)) *
Math.Pow(Math.Sin(dLon / 2), 2);
double c = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));
double distance = EARTH_RADIUS_M * c;
return distance;
}
Windows 10 고려 사항 :
private async void StartLocationExtensionSession()
{
session = new ExtendedExecutionSession();
session.Description = "Location Tracker";
session.Reason = ExtendedExecutionReason.LocationTracking;
var result = await session.RequestExtensionAsync();
}
Windows Phone 8에 대한 고려 사항 :
https://msdn.microsoft.com/en-us/library/windows/apps/jj662935(v=vs.105).aspx
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다