【问题标题】:How to find signal strength of the GPS provider and Network provider for location capturing and how to determine which is having strong strength如何查找 GPS 提供商和网络提供商的信号强度以进行位置捕获以及如何确定哪个信号强度强
【发布时间】:2014-09-05 06:04:03
【问题描述】:

我正在开发一个安卓应用程序。

配置细节是最低sdk version="7"

这些是我在我的应用程序中执行的操作:

当用户进入我的应用程序时捕获位置详细信息(gps 位置详细信息) 有时 GPS 提供商的信号强度很高,有时网络提供商的信号强度很高。

我想检查哪些信号强度高。找到高信号强度后,我需要通过该提供商捕获位置详细信息。

例如,如果 GPS 提供商的信号强度高于网络提供商的意思,则 I 如果网络提供商的信号强度高于 GPS 提供商的意思,则我使用网络提供商参数启动位置侦听器。
我想查找信号强度。如果 gps 提供商的信号强度高,那么我只选择 gps 提供商。如果网络提供商的信号强度高,则我只选择网络提供商。

如何查找 GPS 提供商和网络提供商的信号强度以进行位置捕获以及如何确定哪个信号强度强。 欢迎大家提出意见。

【问题讨论】:

  • 对所有提供商(GPS、网络等)使用一个位置监听器,并在您的位置上使用getAccuracy() 来确定它的精确程度:developer.android.com/reference/android/location/…
  • 这不是你想做的。如果您需要 GPS 的准确性,请使用 GPS。如果不这样做,请使用网络提供商来节省电池。如果您处于可以使用其中任何一种的情况下,您不想根据信号强度进行切换,而是根据精度进行切换,这是一个单独的问题(精度在 Location 对象中返回,您有 68% 的机会'符合返回的准确性)。

标签: android gps locationmanager android-location locationlistener


【解决方案1】:

这没有多大意义。它不会帮助您评估信号强度。 GPS 位置有效或无效,并且还具有估计的准确度(水平)。 (不仅是信号串,还有可见卫星之间的角度(表示为gps属性hdop)。 使用location.getAccuaracy() 获取估计的误差(以米为单位)。

Gps 的平均精度为 2-6m。蜂窝塔网络定位通常不超过 1000m。 Wlan 网络可能比手机信号塔好得多,但只能在已知的 wlan 附近工作。

您决定您的应用需要 2-6 还是 1000m 的精度。在第一种情况下使用 GPS_PROVIDER。

所以也许你应该使用location.getAccuracy() 来优化你的应用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 2011-10-10
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多