Android:确定GPS信号强度
我的应用程序将使用Android:确定GPS信号强度,android,gps,Android,Gps,我的应用程序将使用GPS、Cellular network或WiFi准确确定当前位置。如果GPS信号强度差或低,则准确度将差,因此我必须关闭GPS并切换Cellular network或WiFi。 我的挑战是 1.如何确定GPS信号弱或强。如果情况不佳,我需要停止GPS并切换到cellular network或WiFi 2.如果GPS信号很强,我如何确认位置是否准确并运行locationManager.RemoveUpdate(locationListener)要停止更新吗 3.电池消耗应为最小
GPS
、Cellular network
或WiFi
准确确定当前位置。如果GPS
信号强度差或低,则准确度将差,因此我必须关闭GPS
并切换Cellular network
或WiFi
。
我的挑战是
1.如何确定GPS
信号弱或强。如果情况不佳,我需要停止GPS
并切换到cellular network
或WiFi
2.如果GPS
信号很强,我如何确认位置是否准确并运行locationManager.RemoveUpdate(locationListener)代码>要停止更新吗
3.电池消耗应为最小值
感谢您提前提供任何建议或代码。您可以立即向所有提供商(GPS、手机和Wifi)请求位置。交付的位置提供了有关修复类型的信息,以及修复估计精度的信息
因此,您可以在检查已收到的结果后关闭进一步的更新
手机和WiFi的电池电量非常低,所以如果你有GPS的话,我不会担心同时打开手机和WiFi来进行修复 我想我可以回答你的第一个问题。要确定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();
}
};