`

Android GPS开启与否检测

 
阅读更多
最近做一个项目:利用到GPS,用户希望在手机GPS未开启的时候,提醒用户设置GPS开启。

代码如下

 

public class GpsOpenorNot extends Activity {     @Override  protected void onActivityResult(int requestCode, int resultCode, Intent data) {   // TODO Auto-generated method stub      if(requestCode==0){             }   super.onActivityResult(requestCode, resultCode, data);  }  /** Called when the activity is first created. */       @Override     public void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.main);         initGPS();         isGpsOpen();     }     public void  isGpsOpen(){      LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);      boolean GPS_status = lm.isProviderEnabled(LocationManager.GPS_PROVIDER);//获得手机是不是设置了GPS开启状态true:gps开启,false:GPS未开启      boolean NETWORK_status = lm.isProviderEnabled(LocationManager.NETWORK_PROVIDER);//另一种Gpsprovider(Google网路地图)      String status = "";      if(GPS_status){       status += "GPS开启";      }else{       status += "GPS未开启";       //return false;      }      if(NETWORK_status){       status += "NETWORK 开启";      }else{       status += "NETWORK 未开启";      }      //弹出对话框      new AlertDialog.Builder(GpsOpenorNot.this).setMessage(""+status).setPositiveButton("OK", null).show();      //弹出Toast      Toast.makeText(GpsOpenorNot.this, status, Toast.LENGTH_LONG).show();           }     private void initGPS(){         LocationManager locationManager=(LocationManager) this.getSystemService(Context.LOCATION_SERVICE);

        //判断GPS模块是否开启,如果没有则开启         if(!locationManager.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER)){          Toast.makeText(GpsOpenorNot.this, "GPS is not open,Please open it!", Toast.LENGTH_SHORT).show();          //转到手机设置界面,用户设置GPS          Intent intent=new Intent(Settings.ACTION_SECURITY_SETTINGS);          startActivityForResult(intent,0); //设置完成后返回到原来的界面         }         else {           //弹出Toast          Toast.makeText(GpsOpenorNot.this, "GPS is ready", Toast.LENGTH_LONG).show();           //弹出对话框          new AlertDialog.Builder(this).setMessage("GPS is ready").setPositiveButton("OK", null).show();         }    }

}

注意,一定要在AndroidManiFest.xml文件中注册权限 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
Android Location提供两种获取地理位置的方式:一种是GPS(LocationManager.GPS_PROVIDER),一种是Google网络地图(LocationManager.NETWORK_PROVIDER)
来自:http://blog.163.com/lhl_soft/blog/static/20175000420121282495192/
分享到:
评论

相关推荐

    Android 强制开启GPS

    然而,有些开发者可能需要在没有用户交互的情况下强制开启GPS,这涉及到对Android API的深入理解和使用。以下是对这个主题的详细阐述: 首先,Android提供了LocationManager服务,它允许应用请求位置更新并管理不同...

    android GPS架构之GPS的开启与关闭

    Android GPS 架构之 GPS 的开启与关闭 Android GPS 架构中的 GPS 开启与关闭是指在 Android 系统中如何启动和关闭 GPS 设备的过程。本文将详细介绍 GPS 的开启与关闭的代码实现、系统启动过程、数据库写入过程等...

    【Android】代码开启/关闭GPS

    【Android】代码开启/关闭GPSDemo 相关文章:http://blog.csdn.net/etzmico/article/details/7200470 为了方便看效果,您可以在在onCreate中添加finish();方法,然后打开系统GPS设置页面再运行代码,这样就能看到...

    AndroidGPS定位源码

    合理设置定位间隔和精度,避免频繁开启GPS,可以有效减少电量消耗。 9. **定位权限提示** Android 6.0(API级别23)及以上版本需要在运行时请求权限。因此,应用需要检查并请求`ACCESS_FINE_LOCATION`权限。 10....

    android Gps信号加强处理

    在Android系统中,GPS(全球定位系统)是设备获取地理位置信息的重要途径。然而,由于多种因素,如环境遮挡、天气状况或者硬件性能,手机可能会遇到GPS信号接收困难或者信号弱的问题。本篇将深入探讨如何解决这些...

    Android GPS定位简单 DEMO

    二,当你开启GPS,provider的值为GPS。这时的定位方式为GPS,由于GPS定位慢,所以它不可能立即返回你一个Location对象,所以就返回null了。 **3.推荐locationManager.requestLocationUpdates();方法** ...

    android GPS 驱动源码

    4. **设置和控制**:HAL提供了设置GPS参数的接口,例如开启/关闭GPS,设置定位精度、更新频率等。 5. **电源管理**:驱动还需要处理电源管理,确保在不需要定位服务时,能有效降低功耗。 在源码层面,Android GPS...

    Android GPS 收星测试APK

    "Android GPS 收星测试APK"是一个专为Android用户设计的应用程序,主要用于检测和分析GPS的接收卫星信号情况。这个APK可以帮助开发者、硬件制造商以及普通用户了解设备的GPS性能,包括定位精度、信号强度和卫星锁定...

    Android Gps Test源码

    《深入解析Android Gps Test源码》 在移动开发领域,Android GPS测试是开发者不可或缺的工具,它能够帮助我们理解并优化GPS定位功能。本文将深入探讨名为"Android Gps Test"的应用源码,旨在揭示其工作原理,帮助...

    Android Ublox GPS 驱动

    在Android系统中,Ublox GPS驱动扮演着至关重要的角色,它是连接硬件GPS模块与操作系统之间的桥梁,使得设备能够接收并处理卫星信号,提供精确的位置信息。本文将深入探讨Android Ublox GPS驱动的相关知识点,包括其...

    android 测试GPS搜星程序及源代码

    6. **GPS状态检查**:检测GPS是否已开启并可用。 为了测试和优化GPS性能,开发者可以: 1. **模拟测试**:使用Android Studio的AVD Manager创建模拟器,并在模拟器中运行应用,测试不同环境下的GPS表现。 2. **真机...

    Android GPS获得定位数据源代码

    在Android开发中,获取GPS定位数据是常见的需求,主要用于实现地图导航、位置服务等功能。本文将详细介绍如何通过源代码在Android设备上获取GPS定位信息,并将其存储到SQLite本地数据库中。 首先,Android系统提供...

    Android读取GPS数据demo

    在Android平台上,获取GPS(全球定位系统)数据是开发者经常需要处理的任务,特别是在开发地图应用、导航系统或者位置服务相关的应用程序时。这个“Android读取GPS数据demo”提供了一个简单的示例,帮助开发者理解...

    Android GPS定位 代码+APK

    要检测GPS是否开启,我们可以调用`LocationManager`的`isProviderEnabled()`方法,传入`LocationManager.GPS_PROVIDER`作为参数。如果返回值为`true`,则表示GPS已开启;反之,则表示关闭。 在获取GPS定位时,我们...

    android使用GPS获取当前地理位置

    如果GPS信号不佳或未开启,它可能无法提供有效的位置信息。因此,最好是在`LocationListener`的`onLocationChanged`回调中处理`Location`对象,因为系统会在GPS定位成功时自动传递新的位置信息。 接下来,我们需要...

    Android Gps Test源码.rar

    主要功能上,"Android Gps Test源码"可能具备实时位置显示、GPS开启/关闭控制、卫星数量显示、定位精度评估等功能。实时位置显示通常通过地图API实现,如Google Maps API,将定位信息转换为地图上的坐标。GPS的开启/...

    Android GPS读取框架

    在Android系统中,GPS(全球定位系统)是一个关键的组件,用于获取设备的位置信息。"Android GPS读取框架"是一个专为Android应用设计的库,它简化了从GPS接收器连续读取位置数据的过程。这个框架适用于那些需要实时...

    android判断是否有GPS硬件

    本篇将详细讲解如何在Android应用中进行GPS硬件的检测。 首先,我们要了解Android API提供了哪些工具来检查GPS硬件。在Android SDK中,`LocationManager`类是处理位置和导航的主要接口,它能够帮助我们判断GPS硬件...

Global site tag (gtag.js) - Google Analytics