Android GPS 定位的实现

您的评价: 收藏该经验

今天弄了一个多小时,写了一个GPS获取地理位置代码的小例子,包括参考了网上的一些代码,并且对代码进行了一些修改,希望对大家的帮助。具体代码如下:要实用Adnroid平台的GPS设备,首先需要添加上权限,所以需要添加如下权限:

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

具体实现代码如下:

首先判断GPS模块是否存在或者是开启:

01 privatevoidopenGPSSettings() {
02 LocationManager alm = (LocationManager)this
03 .getSystemService(Context.LOCATION_SERVICE);
04 if(alm
05 .isProviderEnabled(android.location.LocationManager.GPS_PROVIDER)) {
06 Toast.makeText(this,"GPS模块正常", Toast.LENGTH_SHORT)
07 .show();
08 return;
09 }
10
11 Toast.makeText(this,"请开启GPS!", Toast.LENGTH_SHORT).show();
12 Intent intent =newIntent(Settings.ACTION_SECURITY_SETTINGS);
13 startActivityForResult(intent,0);//此为设置完成后返回到获取界面
14
15 }

如果开启正常,则会直接进入到显示页面,如果开启不正常,则会进行到GPS设置页面:

获取代码如下:

01 privatevoidgetLocation()
02 {
03 // 获取位置管理服务
04 LocationManager locationManager;
05 String serviceName = Context.LOCATION_SERVICE;
06 locationManager = (LocationManager)this.getSystemService(serviceName);
07 // 查找到服务信息
08 Criteria criteria =newCriteria();
09 criteria.setAccuracy(Criteria.ACCURACY_FINE);// 高精度
10 criteria.setAltitudeRequired(false);
11 criteria.setBearingRequired(false);
12 criteria.setCostAllowed(true);
13 criteria.setPowerRequirement(Criteria.POWER_LOW);// 低功耗
14
15 String provider = locationManager.getBestProvider(criteria,true);// 获取GPS信息
16 Location location = locationManager.getLastKnownLocation(provider);// 通过GPS获取位置
17 updateToNewLocation(location);
18 // 设置监听器,自动更新的最小时间为间隔N秒(1秒为1*1000,这样写主要为了方便)或最小位移变化超过N米
19 locationManager.requestLocationUpdates(provider,100*1000,500,
20 locationListener);
21 }

到这里就可以获取到地理位置信息了,但是还是要显示出来,那么就用下面的方法进行显示:

01 privatevoidupdateToNewLocation(Location location) {
02
03 TextView tv1;
04 tv1 = (TextView)this.findViewById(R.id.tv1);
05 if(location !=null) {
06 doublelatitude = location.getLatitude();
07 doublelongitude= location.getLongitude();
08 tv1.setText("维度:"+ latitude+"\n经度"+ longitude);
09 }else{
10 tv1.setText("无法获取地理信息");
11 }
12
13 }
这样子就能获取到当前使用者所在的地理位置了,至少如何下地图上实现,在下面将进行获取,并显示出来!对参考代码的人表示感谢!

更多相关文章

  1. [置顶] 在Android程序代码中实现软件安装和卸载
  2. Android Studio删除工程里面无用的代码和资源
  3. android studio中svn的使用(关联svn、svn提交代码,分支管理等)
  4. 卜若的代码笔记系列-unity系列-第三章:android交互之android stud
  5. Android社交类APP动态详情代码实现通用模板
  6. 在 Android 中调用二进制可执行程序(native executable )-- 在代码
  7. Android软件开发之获取通讯录联系人信息(二十九)
  8. Android旅游APP类项目源代码

随机推荐

  1. android Theme使用四
  2. 仿照利用android系统源码资源文件,修改See
  3. Android 邮件发送(一键发送, 163邮箱)
  4. Android 文件读写 + sdcard + 文件的属性
  5. Android 静默安装
  6. android-单元测试(Android JUnit Test)
  7. Android系统权限和root权限
  8. Android 编程下 Touch 事件的分发和消费
  9. Android类加载器ClassLoader
  10. adb使用查看应用内存使用情况