如何在 Android 中获取当前位置
了解问题
您遇到困难使用 Android 的网络位置提供程序获取当前位置坐标。尽管实现了多个现有类,您仍然收到过时的坐标。
实现详细信息
定义一个 LocationListener 来处理位置更新:
private final LocationListener mLocationListener = new LocationListener() { @Override public void onLocationChanged(final Location location) { // Custom code for handling location changes } };
获取LocationManager并请求位置更新:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE); mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, LOCATION_REFRESH_TIME, LOCATION_REFRESH_DISTANCE, mLocationListener); }
位置刷新时间和距离常量:
int LOCATION_REFRESH_TIME = 15000; // 15 seconds to update int LOCATION_REFRESH_DISTANCE = 500; // 500 meters to update
对于基于网络的位置:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
基于 GPS 的位置:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
以上是为什么我使用网络提供程序进行的 Android 位置更新已过时?的详细内容。更多信息请关注PHP中文网其他相关文章!