首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >地理编码会减慢一切吗?

地理编码会减慢一切吗?
EN

Stack Overflow用户
提问于 2011-07-28 19:19:38
回答 2查看 1.4K关注 0票数 2

我有以下问题:我写了一个函数来确定作为字符串参数传递的街道的确切位置:

代码语言:javascript
复制
private GeoPoint LocationToGeoPointParser(String address) throws IOException
    {
        Geocoder geoCoder = new Geocoder(this.context,Locale.ENGLISH);
    List<Address> addr = null;
    addr =  geoCoder.getFromLocationName(address, 1);
    double la = addr.get(0).getLatitude();
    double lo = addr.get(0).getLongitude();

    Double longitude = addr.get(0).getLongitude()*1E6;
    Double latitude = addr.get(0).getLatitude()*1E6;
    return new GeoPoint(latitude.intValue(),longitude.intValue());
    //return new GeoPoint(73,32);
}

如果我以这种方式使用函数,当地图加载时,一切都会非常慢。如果我注释地理编码代码并使用return new GeoPoint(73,32),它可以正常工作。有人能解释一下为什么地理编码会减慢我的应用程序吗?谢谢!:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-28 19:26:02

地理编码器类需要一个未包含在核心android框架中的后端服务。如果平台中没有后端服务,则地理编码器查询方法将返回一个空列表。

使用HandlerAsyncTask等线程来调用后台,然后更改UI

票数 2
EN

Stack Overflow用户

发布于 2011-07-28 19:26:59

我还没有使用过Android API,但我想地理编码将调用某种类型的google web服务,它执行地理编码并返回结果。由于这涉及到网络通信,而getFromLocationName()方法似乎是阻塞的,因此遇到延迟并不是不合理的,也许在移动互联网连接中更是如此。如果您快速连续地调用您的方法,则会有更大的延迟空间。

当然,这是假设我是正确的,并且地理编码是在某个服务器上完成的。

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

https://stackoverflow.com/questions/6858069

复制
相关文章

相似问题

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