阅读量:5
在Android中,可以通过以下步骤使用GPS和NetWork获取定位信息:
- 在AndroidManifest.xml文件中添加定位权限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
- 在Activity中创建一个LocationManager对象,并注册定位监听器:
// 获取LocationManager对象 LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); // 创建定位监听器 LocationListener locationListener = new LocationListener() { public void onLocationChanged(Location location) { // 当位置发生变化时调用 double latitude = location.getLatitude(); double longitude = location.getLongitude(); // 处理定位信息 } public void onStatusChanged(String provider, int status, Bundle extras) { // 当定位状态发生变化时调用 } public void onProviderEnabled(String provider) { // 当定位提供者可用时调用 } public void onProviderDisabled(String provider) { // 当定位提供者不可用时调用 } }; // 注册定位监听器 locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener); locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
- 在Activity的onDestroy()方法中,取消定位监听器的注册:
locationManager.removeUpdates(locationListener);
- 在AndroidManifest.xml文件中添加以下权限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
这样就能通过GPS和NetWork获取定位信息了。当位置发生变化时,会调用定位监听器中的onLocationChanged()方法,可以在该方法中处理定位信息。