【问题标题】:Android:Determine the GPS signal strengthAndroid:确定 GPS 信号强度
【发布时间】:2012-07-17 09:53:44
【问题描述】:

我的应用程序将使用GPSCellular networkWiFi准确确定当前位置。如果GPS信号强度很差或很低,那么准确度会很差,所以我必须关闭GPS和切换cellular networkWiFi。 我的挑战是

1.如何确定GPS 信号的强弱。如果穷我需要停止GPS 并切换到cellular networkWiFi

2.如果GPS信号强,如何确认位置准确并运行locationManager.removeUpdates(locationListener);停止更新?

3.电池消耗应该是最低的。

感谢您提前提供任何建议或代码。

【问题讨论】:

标签: android gps


【解决方案1】:

您可以一次向所有提供商(GPS、蜂窝网络和 Wifi)请求位置。交付的位置提供有关修复类型的信息以及有关修复的估计准确性的信息。

因此,您可以在检查已收到的结果后关闭进一步的更新。

获取蜂窝网络和 WiFi 修复的电池电量非常低,所以如果您完全打开 GPS,我不会担心同时打开蜂窝网络和 WiFi 来修复。

【讨论】:

    【解决方案2】:

    我想我可以回答您的第一个问题。要确定 GPS 信号强度,请使用以下代码:

    getGsmSignalStrength();

    private class MyPhoneStateListener extends PhoneStateListener
    {
        /* Get the Signal strength from the provider, each time there is an update */
        @Override
        public void onSignalStrengthsChanged(SignalStrength signalStrength)
        {
            super.onSignalStrengthsChanged(signalStrength);
            Toast.makeText(getApplicationContext(), "Go to Firstdroid!!! GSM Cinr = "
                    + String.valueOf(signalStrength.getGsmSignalStrength()), Toast.LENGTH_SHORT).show();
        }
    
    };
    

    我希望这会有所帮助。

    【讨论】:

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