使用WiFi获取位置详细信息

时间:2012-04-16 10:58:27

标签: android gps android-wifi

我正在Android中创建一个小应用程序,它指向当前位置。 我已经使用了GPS提供商,但发现我不会在某些地方使用GPS提供商获取数据。

任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:3)

如果您已连接到WIFI,则只需使用NETWORK PROVIDER进行位置更新。 它们也会快速而准确。

通常,如果不经常需要位置更新,则同时从GPS和NETWORK一起询问位置更新。每当您获得所需精度的位置更新时,请从收听位置更新中取消注册。

但如果经常需要更新位置,那么拨打GPS可能会成为杀手锏 所以要小心使用GPS PROVIDER。

GPS更新仅在开放天空下可用。 GPS更新需要时间,需要电池但更准确。

网络更新速度更快,耗电量更少但准确度相对较低。 但是,如果我们谈论的是WIFI准确度,它将接近50或100,可以满足许多实时要求。

这一切都取决于你的要求。

答案 1 :(得分:-1)

要检查设备是通过手机还是wifi连接,您可以使用以下代码:

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

//wifi
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();

然后像这样使用......

if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING) {
    //wifi
}

有关详细信息,请参阅link