首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >onLocationChanged到底是什么时候被调用的

onLocationChanged到底是什么时候被调用的
EN

Stack Overflow用户
提问于 2011-12-22 15:34:41
回答 2查看 44.1K关注 0票数 23

对我来说,它似乎是在活动第一次开始时被调用,就在onCreate之后,它似乎以随机的间隔被调用,无论我是否移动?

不管怎样,如果我在onCreate方法中有这样的代码,它会自动调用吗?

代码语言:javascript
复制
locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();

对吗?

干杯,迈克。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-22 15:57:36

您的问题不清楚,initially.Your代码和标题不匹配。我只是回答你的题目。

您必须为您的位置管理器注册位置侦听器,然后只会根据您在注册位置侦听器时提供的设置调用onLocationChanged()。

参见下面的代码如何做到这一点。我使用GPS提供商,您也可以使用任何基于标准的提供商。

代码语言:javascript
复制
LocationManger lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, new LocationListener() {
            @Override
            public void onLocationChanged(Location location) {
                // TODO Auto-generated method stub
            }
            @Override
            public void onProviderDisabled(String provider) {
                // TODO Auto-generated method stub
            }
            @Override
            public void onProviderEnabled(String provider) {
                // TODO Auto-generated method stub
            }
            @Override
            public void onStatusChanged(String provider, int status,
                    Bundle extras) {
                // TODO Auto-generated method stub
            }           
        });

对于您的问题,如果当前位置更新与上一个已知位置不匹配,则将调用onLocationChanged()。

更新的位置将针对每个minTime (在我的例子中为1000毫秒)和如果设备移动minDistance (在我的例子中为0米)的距离而改变。

我希望你能理解这一点。

票数 32
EN

Stack Overflow用户

发布于 2011-12-22 15:46:35

代码语言:javascript
复制
public void onLocationChanged(Location location)

一旦您的位置发生更改,上述方法就会自动调用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8600688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档