如何在android上停止/暂停地理定位

时间:2013-01-29 11:56:56

标签: actionscript-3 flex flash-builder4.5

我正在尝试使用flashbuilder 4.6并使用我在网上找到的这个简单/简单的地理定位代码进行一些测试,因为我试图了解更多有关它以及如何使用它...

我很想知道的一件事是如何停止/中断地理位置例程,以便STOPS轮询该位置并等待用户“启动”地理位置。

如果我使用clearInterval(interval);这可以阻止循环我猜 - 但geo2继续存在并使用设备资源,对吗?例如,使用slideToggle控制它的代码是什么样的?

地理定位代码段我正在尝试...

private function onMapReady(e:Event):void
        {
            if (Geolocation.isSupported)
            {
                var geo = new Geolocation();
                geo.setRequestedUpdateInterval(100);
                geo.addEventListener(GeolocationEvent.UPDATE, geolocationUpdateHandler);
            }
                else
                {
                    trace("No geolocation support.");
                }   
        }



        private function geolocationUpdateHandler(event:GeolocationEvent):void
        {
            trace("lat:" + event.latitude.toString() + " - ");
            trace("long:" + event.longitude.toString() + "° - ");
            trace("Accuracy:" + event.horizontalAccuracy.toString() + " m");

        }

1 个答案:

答案 0 :(得分:4)

如果您想停止对轮询更新做出反应,只需删除侦听器:

geo.removeEventListener(GeolocationEvent.UPDATE, geolocationUpdateHandler);

如果您想完全关闭轮询,只需将其取消:

geo = null;

(并确保首先删除所有侦听器)