C# 如何实现持续的;精确的Windows phone 8 gps跟踪
我尝试制作一个应用程序,它可以连续获取windows phone 8的位置信息 以下代码用于获取位置C# 如何实现持续的;精确的Windows phone 8 gps跟踪,c#,windows-phone-8,gps,C#,Windows Phone 8,Gps,我尝试制作一个应用程序,它可以连续获取windows phone 8的位置信息 以下代码用于获取位置 geolocator = new Geolocator(); geolocator.DesiredAccuracyInMeters = 30; geolocator.ReportInterval = 15000; geolocator.StatusChanged +=
geolocator = new Geolocator();
geolocator.DesiredAccuracyInMeters = 30;
geolocator.ReportInterval = 15000;
geolocator.StatusChanged += geolocator_StatusChanged;
geolocator.PositionChanged += geolocator_PositionChanged;
当gps正常工作时,一切正常
但一旦gps位置不可用,地理定位仪将停止位置提取。(即当设备返回gps区域时,地理定位仪位置更改不会被调用)
我尝试在geologitor\u StatusChanged()
中创建一个新的geologitor对象,如下所示
但它也不起作用。请指导我如何确保gps数据的持续可用性
另一点注意到,一旦gps源更改为蜂窝式,它就再也不会使用Satalite作为gps源(蜂窝式源返回的gps值最不准确)。那么如何在WindowsPhone8中指定gps源呢
在设备上完成的测试:诺基亚lumia 520我有一个完全工作的windows phone定位客户端,我已经在lumia 520上测试过了。请测试一下,让我知道您的想法: 您不应该像关注精度一样关注位置源。如果一个信号源达到了你要求的精度(无论是gps、wifi还是手机),谁会在乎它来自哪里。测试您的位置,确保其满足您的精度要求:
if (args.Position.Coordinate.Accuracy < 100.0) {
// do something with location
}
if(参数位置坐标精度<100.0){
//对位置做些什么
}
将DesiredAccuracy属性设置为High,以便使用gps源谢谢我会退房。我能看到的与您的实现的唯一区别是您使用的是静态地理定位器对象。这有什么重要意义吗?我想你指的是我分配给App.geoloator=new geoloator()的那一行;我只是按照我看到的所有样本的方式来做。通过分配给应用程序的App.Geolocator对象。
if (args.Position.Coordinate.Accuracy < 100.0) {
// do something with location
}