我可以在应用程序中打开/关闭GPS吗?由于它耗尽了大量电池,我可以将其关闭一段时间吗?或者有更好的解决方案......
答案 0 :(得分:3)
您要求用户执行此操作(可能使用吐司),启动此活动
if(!LocationManager.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER ))
{
Intent myIntent = new Intent( Settings.ACTION_LOCATION_SOURCE_SETTINGS );
startActivity(myIntent);
}
答案 1 :(得分:2)
试试这个......
locationManager.removeUpdates(myLocationListener); locationManager = null;
答案 2 :(得分:1)
private void turnGPSOn(){
String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
if(!provider.contains("gps")){ //if gps is disabled
final Intent poke = new Intent();
poke.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");
poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
poke.setData(Uri.parse("3"));
sendBroadcast(poke);
}
}
private void turnGPSOff(){
String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
if(provider.contains("gps")){ //if gps is enabled
final Intent poke = new Intent();
poke.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");
poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
poke.setData(Uri.parse("3"));
sendBroadcast(poke);
}
}
答案 3 :(得分:0)
您无法自行打开/关闭它。但是,您可以提示用户关闭/打开它:How to programmatically enable GPS in Android Cupcake
答案 4 :(得分:0)
我认为作为一种安全措施,android系统不允许你打开和关闭用户的gps(我认为是android 2.0)。您可以停止获取更新并且应该停止使用gps(除非其他应用程序使用它),或者要求用户将其关闭。
答案 5 :(得分:0)
您可以停止在应用程序中侦听GPS事件(如果您的应用程序使用GPS)。
例如,使用LocationManager.removeUpdates
。
如果你想在操作系统级别“关闭”GPS,我认为不可能以编程方式进行。