System.Reflection.TargetInvocationException с Windows phone 8 при отслеживании местоположения

Я разрабатываю приложение, основанное на службах GPS, и я должен постоянно отслеживать местоположение пользователя, например HERE Maps, и я использую приведенный ниже код:

geolocator = new Geolocator();
geolocator.DesiredAccuracy = PositionAccuracy.High;
geolocator.MovementThreshold = 20; //Doesn't matter the value I put here, it won't work
geolocator.PositionChanged += geolocator_PositionChanged;

void geolocator_PositionChanged(Geolocator sender, PositionChangedEventArgs args)
{
    Dispatcher.BeginInvoke(() =>
    {
        if(args.Position != null)
        {
             myPosition = args.Position.Coordinate.ToGeoCoordinate();
             UpDateData();
        }
     });
}

Проблема в том, что я получил исключение System.Reflection.TargetInvocationException.

У вас есть решение такой проблемы?


person Luan Seminario    schedule 22.10.2014    source источник
comment
Убедитесь, что ID_CAP_LOCATION отмечен в Capabilities. Если это не решит вашу проблему, я предполагаю, что это исходит от UpDateData(), закомментируйте это.   -  person Chubosaurus Software    schedule 23.10.2014
comment
ID_CAP_LOCATION было первым, что я проверил, когда начал разработку.   -  person Luan Seminario    schedule 23.10.2014
comment
В функции UpDateData() я помещаю кнопки в элемент управления картой только в зависимости от моего текущего местоположения.   -  person Luan Seminario    schedule 23.10.2014
comment
Так что же произойдет, если вы закомментируете это?   -  person Chubosaurus Software    schedule 23.10.2014


Ответы (2)


Скорее всего, эта ошибка вызвана тем, что location не помечен как on в файле манифеста вашего приложения.

person Stuart Smith    schedule 22.10.2014
comment
ID_CAP_LOCATION было первым, что я проверил, когда начал разработку. - person Luan Seminario; 23.10.2014

Как упоминал @Stuart, убедитесь, что вы отметили ID_CAP_LOCATION в своем файле AppManifest. Если вы этого не сделаете, ваше приложение выдаст исключение, и когда вы попытаетесь развернуть его во время разработки, это приведет к сбою вашего приложения.

Как постоянно отслеживать местоположение телефона для Windows Phone 8< /а>

person Kulasangar    schedule 23.10.2014
comment
ID_CAP_LOCATION было первым, что я проверил, когда начал разработку. - person Luan Seminario; 23.10.2014