首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android位置提供商- GPS还是网络提供商?

Android位置提供商- GPS还是网络提供商?
EN

Stack Overflow用户
提问于 2011-07-21 19:25:13
回答 3查看 137.5K关注 0票数 135

在我的应用程序中,我想确定用户的当前位置。然而,在这方面,我确实有几个问题:

  1. 有不同的位置提供商,哪一个最准确?GPS ProviderNetwork Provider
  2. In这两个可用的提供程序有多大区别?如何在我的应用程序中实现function?
  3. Could功能?

请为我提供一些代码片段或教程

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-21 19:43:29

安卓系统中有3个位置服务提供商。

它们是:

GPS -> (GPS,AGPS):位置提供商的名称。此提供商使用卫星确定位置。根据情况,此提供程序可能需要一段时间才能返回位置修复。需要权限android.permission.ACCESS_FINE_LOCATION。

网络-> (AGPS,CellID,WiFi MACID):网络位置提供商的名称。该提供商根据基站和WiFi接入点的可用性确定位置。通过网络查找来检索结果。需要android.permission.ACCESS_COARSE_LOCATION或android.permission.ACCESS_FINE_LOCATION权限。

被动-> (CellID,WiFi MACID):一种特殊的位置提供程序,用于接收位置而不实际启动位置确定。此提供程序可用于在其他应用程序或服务请求位置更新时被动地接收位置更新,而无需自己实际请求位置。此提供程序将返回由其他提供程序生成的位置。需要权限android.permission.ACCESS_FINE_LOCATION,但如果未启用GPS,此提供程序可能只返回粗略修复。这就是Android对这些位置提供商的称呼,然而,使这些东西工作的底层技术被映射到一组特定的硬件和电信公司提供的功能(网络服务)。

最好的方法是首先使用“网络”或“被动”提供商,然后退回到“gps”,然后根据任务在提供商之间切换。这涵盖了所有情况,并提供最低公分母的服务(在最坏的情况下)和最好的服务(在最好的情况下)。

文章参考:Android Location Providers - gps, network, passive By Nazmul Idris

代码参考:https://stackoverflow.com/a/3145655/28557

-----------------------Update-----------------------

现在安卓有了融合的位置提供商

融合位置提供商智能管理底层定位技术,并根据您的需求为您提供最佳位置。它简化了应用程序获取用户当前位置的方法,提高了精确度并降低了功耗

融合位置提供程序提供了三种获取位置的方式

  1. Last location :当您想要知道当前位置时使用once.
  2. Request Listener:当应用程序在屏幕上/前端时使用使用挂起的意图继续location.
  3. Request位置:当应用程序在后台并需要继续位置时使用

参考:

官网:http://developer.android.com/google/play-services/location.html

融合位置提供程序示例: GIT:https://github.com/kpbird/fused-location-provider-example

http://blog.lemberg.co.uk/fused-location-provider

--------------------------------------------------------

票数 287
EN

Stack Overflow用户

发布于 2011-07-21 19:27:16

GPS通常比网络更准确,但有时GPS不可用,因此您可能需要在两者之间切换。

一个好的开始可能是看看android的开发站点。他们有一个专门用于确定用户位置的部分,它包含了您需要的所有代码样本。

http://developer.android.com/guide/topics/location/obtaining-user-location.html

票数 7
EN

Stack Overflow用户

发布于 2017-02-07 13:26:45

这里有一些很好的答案。你可以采取的另一种方法是使用在线提供的一些免费SDK,如Atooma,tranql和Neura,它们可以与你的Android应用程序集成(集成只需不到20分钟)。除了给你用户的准确位置之外,它还可以让你对用户的活动有很好的洞察力。此外,其中一些电池的耗电量还不到你电池的1%。

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

https://stackoverflow.com/questions/6775257

复制
相关文章

相似问题

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