读书人

Androd用户定位(1)

发布时间: 2012-11-09 10:18:47 作者: rapoo

Androd用户定位(一)

使用GPS定位的话,需要如下权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

如果使用WIFI接入点定位的话,需要如下权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

或者
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

首先使用

LocationManager lm=(LocationManager) this.getSystemService(Context.LOCATION_SERVICE);

lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1, 1, new TestListener());

获得一个LocationManager ,

requestLocationUpdates的第一个参数为获取定位的方法

LocationManager.GPS_PROVIDER和LocationManager.NETWORK_PROVIDER

第二个参数是最小更新的时间,以秒为单位,为了节省电量,这个值可能比你给的值大或者小

第三个参数是最小距离更新,以米为单位。

第四个参数是一个LocationListener监听器,实现监听器,就可以获得位置。实现监听器的接口

class TestListener implements LocationListener{@Overridepublic void onLocationChanged(Location location) {// TODO Auto-generated method stubToast.makeText(LocationDemoActivity.this, location.getLatitude()+":"+location.getLongitude(), 1000).show();System.out.println(location.getLatitude()+":"+location.getLongitude());LocationDemoActivity.this.setTitle(location.getLatitude()+":"+location.getLongitude());}@Overridepublic void onStatusChanged(String provider, int status, Bundle extras) {// TODO Auto-generated method stub}@Overridepublic void onProviderEnabled(String provider) {// TODO Auto-generated method stub}@Overridepublic void onProviderDisabled(String provider) {// TODO Auto-generated method stub}}


在这个监听器中就可以获得经纬度,获取了经纬度就知道设备在哪里了。

读书人网 >移动开发

热点推荐