定位服务GPS:

全球卫星定位系统,使用24个人造卫星所形成的网络来三角定位接受器的位置,并提供经纬度坐标。虽然GPS提供绝佳的位置的精确度,但定位的位置需要在可看见人造卫星或轨道所经过的地方。

定位服务AGPS:

辅助全球卫星定位系统(英语:Assisted Global Positioning System,简称:AGPS)是一种GPS的运行方式。它可以利用手机基地站的资讯,配合传统GPS卫星,让定位的速度更快。用中文来说应该是网络辅助 GPS定位系统。通俗的说AGPS是在以往通过卫星接受定位信号的同时结合移动运营的GSM或者CDMA网络机站的定位信息,就是一方面由具有AGPS的手机获取来自卫星的定位信息,而同时也要靠该手机透过中国移动的GPRS网络下载辅助的定位信息,两者相结合来完成定位。与传统 GPS(GlobalPositioningSystem全球定位系统)首次定位要2、3分钟相比AGPS的首次定位时间最快仅需几秒钟,同时AGPS也彻底解决了普通GPS设备在室内无法获取定位信息的缺陷。

GpsUtil工具类:

/*** GPS工具类** @author Zachary*/
public class GpsUtil {/*** 判断GPS是否开启,GPS或者AGPS开启一个就认为是开启的** @param context* @return true 表示开启*/public static final boolean isOPen(final Context context) {LocationManager locationManager= (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);// 通过GPS卫星定位,定位级别可以精确到街(通过24颗卫星定位,在室外和空旷的地方定位准确、速度快)boolean gps = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);// 通过WLAN或移动网络(3G/2G)确定的位置(也称作AGPS,辅助GPS定位。主要用于在室内或遮盖物(建筑群或茂密的深林等)密集的地方定位)boolean network = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);if (gps|| network) {return true;}return false;}/*** 强制帮用户打开GPS** @param context*/public static final void openGPS(Context context) {Intent GPSIntent = new Intent();GPSIntent.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");GPSIntent.addCategory("android.intent.category.ALTERNATIVE");GPSIntent.setData(Uri.parse("custom:3"));try {PendingIntent.getBroadcast(context, 0, GPSIntent, 0).send();} catch (PendingIntent.CanceledException e) {e.printStackTrace();}}}

感觉也没打开gps,不知道怎么弄,弹出框子让用户自己去打开吧:

private void openGPS() {new AlertDialog.Builder(MapActivity.this).setIcon(android.R.drawable.ic_dialog_info).setTitle(R.string.information).setMessage("开启定位").setNegativeButton(R.string.cancel,null).setPositiveButton(R.string.open, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialogInterface, int i) {Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);startActivityForResult(intent,887);dialogInterface.dismiss();}}).show();}

返回结果进行监听,成功打开之后在进行定位操作。

protected void onActivityResult(int requestCode, int resultCode, Intent data) {switch(requestCode){case 887://开启GPS,重新添加地理监听startLocation();break;default:break;}super.onActivityResult(requestCode, resultCode, data);}

Android判断GPS是否开启和让用户打开GPS相关推荐

  1. android 强制打开gps定位_Android判断GPS是否开启和强制帮用户打开GPS

    引子:在我们的应用为用户提供定位服务时,通常想为用户提供精确点的定位服务,这是需要用户配合的.我们必须先检测用户手机的GPS当前是否打开,若没打开则弹出对话框提示.用户若不配合我们也没办法,只能采用基 ...

  2. Android判断是否已经开启开发者调试模式以及引导用户去开启相应设置

    大家都是有经验的开发人员,直接撸码: 判断当前是否已经开启开发者调试模式: boolean enableAdb = (Settings.Secure.getInt(getContentResolver ...

  3. android 判断service是否开启

    引用:http://blog.csdn.net/ihrthk/article/details/7316389 [java] view plaincopyprint? package com.tutor ...

  4. flutter插件开发学习之旅(4)-------检测GPS状态,打开GPS和显示经纬度实战

    检测GPS状态,打开GPS和显示经纬度实战 前言 准备工具 实战开始 前言 经过上一篇的学习,大家学习到蓝牙的实战,这节课我们给大家分享Flutter调用原生API实现检测手机GPS状态和打开GPS; ...

  5. android开启gps功能,android 打开GPS的几种方式

    1.在讨论打开gps的之前先看下如何检测gps的开关情况: 方式一: boolean gpsEnabled = locationManager.isProviderEnabled(LocationMa ...

  6. (转)Android 判断用户2G/3G/4G移动数据网络

    在做 Android App 的时候,为了给用户省流量,为了不激起用户的愤怒,为了更好的用户体验,是需(要根据用户当前网络情况来做一些调整的,也可以在 App 的设置模块里,让用户自己选择,在 2G ...

  7. Android 判断用户2G/3G/4G移动数据网络

    2019独角兽企业重金招聘Python工程师标准>>> Android 判断用户2G/3G/4G移动数据网络 在做 Android App 的时候,为了给用户省流量,为了不激起用户的 ...

  8. Android判断用户是否已完成设置向导(开机向导)

    Android判断用户是否已完成设置向导(开机向导) inline val Context.isDeviceProvisioned: Booleanget() = Settings.Global.ge ...

  9. Android 系统(191)---ODM 开发用户常见需求文档(九)

    Android 系统(191)---ODM 开发用户常见需求文档(九) 阅读数:1122 一:去除摄像头的假对焦框 (vendor/) (mediatek/proprietary/packages/a ...

最新文章

  1. 关于小程序云开发的一些经典问题处理
  2. OpenMP入门教程(二)reduce sum
  3. python调用dll函数_从Python调用DLL函数
  4. 轻松看懂java设计模式简单工厂模式
  5. 不懂编程的产品经理如何不被程序员吊打?
  6. 执行SQL-MapperMethod.execute()
  7. eureka架构图原理
  8. SendMessage函数的常用消息及其应用大全
  9. 硬货 | 一片小小的薄膜,却可以粘住全世界!
  10. 【NOI2013】快餐店【基环树】【树的直径】【set】
  11. php 时间戳获取周几,PHP实现根据时间戳获取周几的方法,php戳获取周_PHP教程
  12. lighttpd在proxy-core下path_info为空的修复
  13. [luogu3244 SHOI2016] 黑暗前的幻想乡(容斥原理+矩阵树定理)
  14. 2021年北京大学软件与微电子学院考研信息
  15. 融合黄金正弦与sigmoid连续化的海鸥优化算法-附代码
  16. 用收敛标准计算神经网络迭代次数
  17. 对ADMEMS架构设计方法论的一点随笔
  18. 算法/贪心算法/FractionalKnapsack部分背包问题
  19. activiti5.21 + SVG 绘制流程图 高亮显示已完成节点
  20. python宣传视频 抖音_Python生成抖音字符视频,技术流!

热门文章

  1. Auto.js视频笔记
  2. 安全多方计算——Yao‘s 混淆电路
  3. 网络存储(NAS)在智能家居中的地位
  4. 北京大兴区强关私立幼儿园 致数千儿童无学可上
  5. Docker化Node.js网络应用
  6. cf 678E - Another Sith Tournament 【状压dp】
  7. windows 10 输入法如何关掉繁体切换
  8. 辅助系统(Flume,azkaban,sqoop)
  9. MongoDB——高级——集群和安全:安全认证(八)
  10. POS机安全电路设计