Событие не запускается для геолокации во Flex - PullRequest
0 голосов
/ 14 марта 2012

Я создал кнопку, которая ищет координаты устройства. В коде нет ошибок, но по какой-то причине, которая ускользает от меня, событие не инициируется.

Вот мой код:

protected function lblCheckIn_clickHandler(event:MouseEvent):void
        {
            if (Geolocation.isSupported)
            {
                lblLat.text = "Finding Location...";
                geo.addEventListener(GeolocationEvent.UPDATE, onUpdate);


            }
            else
            {
                lblLat.text = "Geolocation is not supported on this device.";
            }
        }

Позже у меня есть код события:

            protected function onUpdate(event:GeolocationEvent):void
        {
            if (event.horizontalAccuracy <= 10)
            {
                Lat = event.latitude.toString();
                Long = event.longitude.toString();
                lblLat.text = Lat;
                lblLong.text = Long;
                geo.removeEventListener(GeolocationEvent.UPDATE, onUpdate);
                navigator.pushView(PersonSelect);
            }
            else
            {
                lblLat.text = "Updating";
            }
        }

О, и я тоже сделал обычный импорт

                          import flash.filesystem.File;
        import flash.sensors.Geolocation;
        import flash.events.GeolocationEvent
        import spark.events.ViewNavigatorEvent
        import flash.utils.ByteArray;

Есть какие-нибудь подсказки, почему мое событие не звонит?

Ответы [ 2 ]

1 голос
/ 19 марта 2012

Я выяснил окончательную причину этой конкретной проблемы. Это происходит из-за того, что Flash Builder не устанавливает полный Android SDK или IOS SDK. После того, как я вручную установил их, скопировав папки SDK по правильным путям в Adobe Flash Builder, мои события GPS были успешно вызваны.

Подводя итог, если вы сталкиваетесь с этой проблемой, когда код и все выглядит хорошо, но он не вызывает ваши события, то убедитесь, что ваши последние SDK для Flex установлены правильно для Android и / или iOS

1 голос
/ 14 марта 2012

Вы создали экземпляр экземпляра geo?

 if (Geolocation.isSupported) 
 { 
      lblLat.text = "Finding Location..."; 
      geo = new Geolocation(); 
      geo.addEventListener(GeolocationEvent.UPDATE, Update); 
 }
...