获得快速准确位置的最佳方式[关闭]

Posted

技术标签:

【中文标题】获得快速准确位置的最佳方式[关闭]【英文标题】:Best way of getting Fast and Accurate Location [closed] 【发布时间】:2016-09-27 23:04:44 【问题描述】:

android 中,我见过很多获取位置的方法。我已经阅读了关于 Location 的 this 和 this,并且我已经了解了 Fused Location Api。

我在应用程序中的情况是,当用户启动应用程序时,它必须以最快的方式获取位置。因为我必须根据用户位置做一些特定的任务。

所以到现在我正在使用定位服务。在此,我尝试了来自 GPS 的定位和来自网络的定位。但他们都需要启用我的位置,但我认为我是否从网络获取位置无关紧要?是吗 ?

那么你们会建议我如何获得位置?哪个应该快速准确地回复?

    位置与 GPS 和网络的主要区别是什么,因为两者都需要启用位置? 上下文中的最佳提供者是什么意思? 融合位置如何工作? 我应该选择 Fused Location API 的位置服务,因为我的应用会使用数据或 wifi(互联网)来进一步工作吗?

请就此争论我的这些困惑?什么对我最好,请有人能分清我的情况并相应地回答我吗?

【问题讨论】:

【参考方案1】:

    您从 GPS 获得的位置比您从网络获得的位置更准确,因此如果您需要准确度,请使用 GPS

    对此不确定,但我认为它与上下文有关,您想要什么类型的位置,如您想要的准确度或最快的位置,因此根据选择您的提供商

    FusedLocation 提供程序是目前在 android 上获取位置的最有效和最有效的解决方案,它从不同来源收集位置数据,并根据传递的参数,如您希望更新位置的时间,您是否需要高精度等。它为您提供最佳位置。

    是的,您应该使用 FusedLocationProvider 来获取 android 上的位置,因为 google 也建议这样做,它是目前在 android 上获取位置的最有效和最有效的方式。

我希望这将有助于您做出决定。

【讨论】:

在 Fused location api 的情况下应该有互联网是否重要 我对此不确定,但我认为它需要互联网连接,因为它使用 google api 回调来获取位置【参考方案2】:

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

网络 –> (AGPS、CellID、WiFi MACID):网络位置提供商的名称。 该提供商根据手机信号塔的可用性确定位置 和 WiFi 接入点。通过网络检索结果 抬头。需要任一权限 android.permission.ACCESS_COARSE_LOCATION 或 android.permission.ACCESS_FINE_LOCATION。

Android 具有融合位置提供程序

Fused Location Provider 智能管理底层定位技术,并根据您的需求为您提供最佳位置。它简化了应用获取用户当前位置的方式,提高了准确性并降低了功耗

融合的位置提供者提供三种获取位置的方式

    最后位置:当您想知道当前位置一次时使用。

    使用监听器请求位置:当应用程序在屏幕/前端并需要继续位置时使用。

    使用 Pending Intent 请求位置:在后台应用程序并要求继续定位时使用。

【讨论】:

如果我希望我的用户位置继续在服务器上发送,为此我认为我必须将融合位置部署为服务?即使我的应用程序已关闭或在后台或强制关闭,如何让我的应用程序检索位置? @CoasMckey 我为此使用了前台服务。

以上是关于获得快速准确位置的最佳方式[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

定位用户的最佳方式[关闭]

从愿望清单中获得最佳分配[关闭]

查找位置的最佳 node.js 模块? [关闭]

获取站点访问者位置的最佳方法是啥? [关闭]

PhoneGap 3.3:如何获得最佳准确性?

iPhone位置跟踪应用程序在后台的最佳方法是啥[关闭]