本节主要是介绍一下gps的使用,google map和gps的结合是android上主要应用之一,android market中,此类产品所占比例不小。
我们在上节的代码中添加如下内容:
LocationManager lm;
MyLocationListener locationListener;
lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationListener = new MyLocationListener();
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
缺少MyLocationListener吧?那我们就创建一个MyLocationListener,要实现LocationListener中的几个方法,LocationListener的功能我就不用再说了吧?
我吧代码贴出来,一目了然。
// 下面是从GPS获取坐标的监听,暂时没有使用
public class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc) {
if (loc != null) {
Log.d("MapTest", "Location changed : Lat: " + loc.getLatitude() + " Lng: " + loc.getLongitude());
GeoPoint p = new GeoPoint((int) (loc.getLatitude() * 1E6), (int) (loc.getLongitude() * 1E6));
mc.animateTo(p);
mc.setZoom(16);
mapView.invalidate();
}
}
@Override
public void onProviderDisabled(String provider) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
}
注意事项:
又是权限的问题,我全列出来,随便用哪个了。
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
相关文章
- Android 音视频开发(六): MediaCodec API 详解
- Android Gradle Plugin指南(六)——高级构建定制
- android的startActivityForResult学习心得
- Android学习心得(六)——位置服务
- Android图形系统分析与移植--六、framebuffer研究
- android图形系统详解六:View layer
- 六、Android学习笔记_JNI_c调用java代码
- Linux学习心得之 Linux下命令行Android开发环境的搭建
- Android项目实战(六):JazzyGridView和JazzyListView的使用
- android系统学习笔记六