【发布时间】:2011-04-14 11:10:44
【问题描述】:
我可以通过多少种方式在 Android 中以编程方式获取当前地理位置(纬度、语言),哪种方式最好、准确且更快??
期待您的建议
谢谢
【问题讨论】:
标签: android geolocation
我可以通过多少种方式在 Android 中以编程方式获取当前地理位置(纬度、语言),哪种方式最好、准确且更快??
期待您的建议
谢谢
【问题讨论】:
标签: android geolocation
您应该阅读 SDK 文档中的 Obtaining User Location。
【讨论】:
可以通过IP地址找到位置:
另一种方法是通过 GSM 或控制平面定位,还有其他方法可以在这里找到:
【讨论】:
在为 Android 开发位置感知应用程序时,您可以利用 GPS 和 Android 的网络位置提供程序来获取用户位置。虽然 GPS 最准确,但它只能在户外工作,它会很快消耗电池电量,并且不会像用户想要的那样快速返回位置。 Android 的网络位置提供程序使用手机信号塔和 Wi-Fi 信号确定用户位置,以一种在室内和室外均可工作、响应速度更快且使用更少电池电量的方式提供位置信息。要在您的应用程序中获取用户位置,您可以同时使用 GPS 和 Network Location Provider,或者只使用一个`
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
MIN_TIME_BW_UPDATES,
MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
Log.d("GPS Enabled", "GPS Enabled");
if (locationManager != null) {
loc = locationManager
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
}
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER,
MIN_TIME_BW_UPDATES,
MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
Log.d("Network", "Network");
if (locationManager != null) {
loc = locationManager
.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
}
【讨论】: