我想知道是否可以在Android 4.0中以编程方式启用和禁用位置服务?
我已经找到了几种方法,以便在以前的Android版本中执行此操作(例如,this是最受欢迎的链接)。但这些方法不适用于Android ICS。
另外,我知道应用程序不应该这样做,但是,例如,默认小部件就是这样做的。
任何人都可以澄清是否可能以及如何实现这一目标?
答案 0 :(得分:2)
在我开发的一个小应用程序中,我通过禁用MyLocationOverlay上的位置来关闭gps。当然,这只有在您使用Google的地图时才有效,因为该类属于Google API。
myLocationOverlay.disableMyLocation();
我将该行放在onStop()方法上,并且只有在当前启用时才行。每次我的应用程序进入后台时,GPS都会自动关闭。
希望它有所帮助。
答案 1 :(得分:2)
您可以启用和禁用gps设备,但用户必须在设置小部件时确认。 this主题中的解决方案。
答案 2 :(得分:1)
LocationManager L = (LocationManager) getSystemService(LOCATION_SERVICE);
if (!L.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
Intent I = new Intent(
android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(I);
}