首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更快的是秒和精确的提供者: GPS_PROVIDER或NETWORK_PROVIDER,如果两者都启用的话?

更快的是秒和精确的提供者: GPS_PROVIDER或NETWORK_PROVIDER,如果两者都启用的话?
EN

Stack Overflow用户
提问于 2011-11-02 19:15:41
回答 5查看 214关注 0票数 0

我需要找到安卓的位置。我的问题是,如果同时启用GPS_PROVIDER和NETWORK_PROVIDER,秒数和精确度提供商哪个更快?你能告诉我需要多长时间才能返回位置,我对这些东西是新的,对时间没有任何概念。

EN

回答 5

Stack Overflow用户

发布于 2011-11-02 19:18:05

您可以选择想要获得最佳提供商的Criteria,例如,如果您的条件是精度:

代码语言:javascript
运行
复制
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Criteria c = new Criteria();
c.setAccuracy(Criteria.ACCURACY_FINE);
final String PROVIDER = lm.getBestProvider(c, true); 

此外,如果你想要快速定位,你可以使用如下函数(从here中提取)来获取最近已知的位置:

代码语言:javascript
运行
复制
public static Location getLastKnownLocation(LocationManager locationManager)
{
    Location bestResult = null;
    float bestAccuracy = 0;
    long bestTime = 0;

    List<String> matchingProviders = locationManager.getAllProviders();

    for (String provider: matchingProviders) {
        Location location = locationManager.getLastKnownLocation(provider);
        if (location != null) {
            float accuracy = location.getAccuracy();
            long time = location.getTime();

            if ((time > minTime && accuracy < bestAccuracy)) {
                bestResult = location;
                bestAccuracy = accuracy;
                bestTime = time;
            }
            else if (time < minTime && 
                    bestAccuracy == Float.MAX_VALUE && time > bestTime){
                bestResult = location;
                bestTime = time;
            }
        }
    }

    return bestResult;
}
票数 1
EN

Stack Overflow用户

发布于 2011-11-02 19:18:29

一般来说,考虑到您正在请求一个新位置,GPS_PROVIDER比NETWORK_PROVIDER需要更多的时间。NETWORK_PROVIDER通常很快,但是GPS_PROVIDER,我不能告诉你(我不知道)这件事的确切时间。

GPS在网络上是精确的。

票数 0
EN

Stack Overflow用户

发布于 2011-11-02 19:22:39

在我的例子中,我发现NETWORK_PROVIDER比GPS_PROVIDER更快,很难说“返回位置需要多长时间”它并不总是相同的……

检查这个,我用它来检索当前位置:

http://code.google.com/p/messesinfoandroid/source/browse/trunk/src/cef/messesinfo/maps/MyLocation.java?spec=svn12&r=12

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

https://stackoverflow.com/questions/7979426

复制
相关文章

相似问题

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