Android判断GPS是否开启和让用户打开GPS
定位服务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相关推荐
- android 强制打开gps定位_Android判断GPS是否开启和强制帮用户打开GPS
引子:在我们的应用为用户提供定位服务时,通常想为用户提供精确点的定位服务,这是需要用户配合的.我们必须先检测用户手机的GPS当前是否打开,若没打开则弹出对话框提示.用户若不配合我们也没办法,只能采用基 ...
- Android判断是否已经开启开发者调试模式以及引导用户去开启相应设置
大家都是有经验的开发人员,直接撸码: 判断当前是否已经开启开发者调试模式: boolean enableAdb = (Settings.Secure.getInt(getContentResolver ...
- android 判断service是否开启
引用:http://blog.csdn.net/ihrthk/article/details/7316389 [java] view plaincopyprint? package com.tutor ...
- flutter插件开发学习之旅(4)-------检测GPS状态,打开GPS和显示经纬度实战
检测GPS状态,打开GPS和显示经纬度实战 前言 准备工具 实战开始 前言 经过上一篇的学习,大家学习到蓝牙的实战,这节课我们给大家分享Flutter调用原生API实现检测手机GPS状态和打开GPS; ...
- android开启gps功能,android 打开GPS的几种方式
1.在讨论打开gps的之前先看下如何检测gps的开关情况: 方式一: boolean gpsEnabled = locationManager.isProviderEnabled(LocationMa ...
- (转)Android 判断用户2G/3G/4G移动数据网络
在做 Android App 的时候,为了给用户省流量,为了不激起用户的愤怒,为了更好的用户体验,是需(要根据用户当前网络情况来做一些调整的,也可以在 App 的设置模块里,让用户自己选择,在 2G ...
- Android 判断用户2G/3G/4G移动数据网络
2019独角兽企业重金招聘Python工程师标准>>> Android 判断用户2G/3G/4G移动数据网络 在做 Android App 的时候,为了给用户省流量,为了不激起用户的 ...
- Android判断用户是否已完成设置向导(开机向导)
Android判断用户是否已完成设置向导(开机向导) inline val Context.isDeviceProvisioned: Booleanget() = Settings.Global.ge ...
- Android 系统(191)---ODM 开发用户常见需求文档(九)
Android 系统(191)---ODM 开发用户常见需求文档(九) 阅读数:1122 一:去除摄像头的假对焦框 (vendor/) (mediatek/proprietary/packages/a ...
最新文章
- 关于小程序云开发的一些经典问题处理
- OpenMP入门教程(二)reduce sum
- python调用dll函数_从Python调用DLL函数
- 轻松看懂java设计模式简单工厂模式
- 不懂编程的产品经理如何不被程序员吊打?
- 执行SQL-MapperMethod.execute()
- eureka架构图原理
- SendMessage函数的常用消息及其应用大全
- 硬货 | 一片小小的薄膜,却可以粘住全世界!
- 【NOI2013】快餐店【基环树】【树的直径】【set】
- php 时间戳获取周几,PHP实现根据时间戳获取周几的方法,php戳获取周_PHP教程
- lighttpd在proxy-core下path_info为空的修复
- [luogu3244 SHOI2016] 黑暗前的幻想乡(容斥原理+矩阵树定理)
- 2021年北京大学软件与微电子学院考研信息
- 融合黄金正弦与sigmoid连续化的海鸥优化算法-附代码
- 用收敛标准计算神经网络迭代次数
- 对ADMEMS架构设计方法论的一点随笔
- 算法/贪心算法/FractionalKnapsack部分背包问题
- activiti5.21 + SVG 绘制流程图 高亮显示已完成节点
- python宣传视频 抖音_Python生成抖音字符视频,技术流!