Я использую класс на этой странице, чтобы получить координаты текущего местоположения на моем Windows Phone: http://www.codeproject.com/Articles/134982/A-helper-class-to-get-the-current-location-on-a-Wi
Я не знаю, почему я всегда получаю "Неизвестное" местоположение.Я пробовал более простые способы получить местоположение, но не удалось.Мой GPS работает, потому что я теряю приложение Карты и гуляю, и я вижу, что место движется правильно.Я проверил свойство GeoCoordinateWatcher.Permisson и его значение «Предоставлено».У меня уже есть эта строка <Capability Name="ID_CAP_LOCATION"/>
в WMAppManifest.xml.
Что я не понимаю в коде в адресе, который я дал выше, это строки:
var immediate = new ImmediateLocation(x => location = x);
immediate.GetLocation();
GeoCoordinate location;
Почемуэто объявление местоположения после его использования?Я заявляю об этом раньше.Есть ли что-то, что я должен знать?
[EDIT]
Теперь я понял лямбда-выражение, у меня есть два исключения:
A first chance exception of type 'System.NullReferenceException' occurred in System.Device.dll
A first chance exception of type 'System.Reflection.TargetInvocationException' occurred in mscorlib.dll
Это StackTrace
en System.Device.Location.GeoCoordinateWatcher.<>c__DisplayClass6.<OnPositionStatusChanged>b__4(Object _)
en System.Reflection.RuntimeMethodInfo.InternalInvoke(RuntimeMethodInfo rtmi, Object obj, BindingFlags invokeAttr, Binder binder, Object parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean verifyAccess, StackCrawlMark& stackMark)
en System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, StackCrawlMark& stackMark)
en System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
en System.Delegate.DynamicInvokeOne(Object[] args)
en System.MulticastDelegate.DynamicInvokeImpl(Object[] args)
en System.Delegate.DynamicInvoke(Object[] args)
en System.Windows.Threading.DispatcherOperation.Invoke()
en System.Windows.Threading.Dispatcher.Dispatch(DispatcherPriority priority)
en System.Windows.Threading.Dispatcher.OnInvoke(Object context)
en System.Windows.Hosting.CallbackCookie.Invoke(Object[] args)
en System.Windows.Hosting.DelegateWrapper.InternalInvoke(Object[] args)
en System.Windows.RuntimeHost.ManagedHost.InvokeDelegate(IntPtr pHandle, Int32 nParamCount, ScriptParam[] pParams, ScriptParam& pResult)
Я нашел это, я не уверен, что это связано с моим делом, но если это поможет кому-то мне помочь ...
http://onebusawaywp7.codeplex.com/workitem/14695