android设置gps自动开启

来源:互联网 发布:linux新手入门 编辑:程序博客网 时间:2024/06/14 00:21

1.第一种方法

private void toggleGPS() {        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(StartActivity.this, 0, gpsIntent, 0).send();        } catch (CanceledException e) {              e.printStackTrace();        }}



  

2.第二种方法
   

private void openGPSSettings() {              //获取GPS现在的状态(打开或是关闭状态)     boolean gpsEnabled = Settings.Secure.isLocationProviderEnabled( getContentResolver(), LocationManager.GPS_PROVIDER );       if(gpsEnabled)     {//关闭GPS      Settings.Secure.setLocationProviderEnabled( getContentResolver(), LocationManager.GPS_PROVIDER, false );     }     else     {      //打开GPS  www.2cto.com      Settings.Secure.setLocationProviderEnabled( getContentResolver(), LocationManager.GPS_PROVIDER, true);    }



    
  3.第三种方法(手动设置)

     

LocationManager alm = (LocationManager)StartActivity.this.getSystemService(Context.LOCATION_SERVICE);       if (alm.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER))        {                    Toast.makeText(this, "GPS模块正常", Toast.LENGTH_SHORT).show();        }                      Toast.makeText(this, "请开启GPS!", Toast.LENGTH_SHORT).show();        Intent intent = new Intent(Settings.ACTION_SECURITY_SETTINGS);        startActivityForResult(intent,0); //此为设置完成后返回到获取界面  



    
  第一第二种需要加上权限

  <!--允许程序读取或写入系统设置 -->
 <uses-permission android:name="android.permission.WRITE_SETTINGS" ></uses-permission>
 <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>

 

原文:http://www.2cto.com/kf/201206/137623.html

0 0