Android 利用程序实现GPS的打开或关闭
来源:互联网 发布:php支持mysql扩展 编辑:程序博客网 时间:2024/05/16 09:25
Android提供了Setting.Secure类,官方对这个类的解释是用来获取系统设置属性值,但不允许修改。需要用户通过系统UI或者专门的API来设置属性值。但是在2.2之后,Setting.Secure增加了isLocationProviderEnabled和setLocationProviderEnabled方法,通过测试发现isLocationProviderEnabled方法获取GPS的状态的,但是如果修改GPS的状态:
Settings.Secure.setLocationProviderEnabled( getContentResolver(), LocationManager.GPS_PROVIDER, true);
而且在mainfest文件中添加了权限:
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
程序任会报错:
: Caused by: java.lang.SecurityException: Permission denial: writing to secure settings requires android.permission.WRITE_SECURE_SETTINGS
最终解决办法如下:
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(this, 0, gpsIntent, 0).send();
}
catch (CanceledException e) {
e.printStackTrace();
}
这样就达到了修改GPS状态的作用,如果是开发该方法就将GPS关闭,反之依然。
参考:http://www.learningandroid.net/blog/advance/programmable-toggle-gps/
转自:http://mycoding.iteye.com/blog/1275162
- Android 利用程序实现GPS的打开或关闭
- Android 利用程序实现GPS的打开或关闭
- android 打开或关闭GPS
- Android中如何通过程序打开或关闭GPS
- Android中如何通过程序打开或关闭GPS
- Android中如何通过程序打开或关闭GPS
- Android中如何打开或关闭GPS
- android中gps的打开关闭
- Android打开或者关闭GPS
- 打开android的gps
- Android 如何打开和关闭GPS设备
- android 5.1 打开与关闭GPS
- 如何编程实现开启或关闭GPS?
- 如何编程实现开启或关闭GPS?
- 如何编程实现开启或关闭GPS?
- 如何编程实现开启或关闭GPS?
- 代码实现开启或关闭GPS
- 如何编程实现开启或关闭GPS
- 函数调用习惯与回调函数
- JBI简介
- hibernate数据库访问(翻译文档)
- 内存泄漏是新手必然要经历的痛,NSMutableArray的正确使用(转载)
- Android开发工具——ADB(Android Debug Bridge) <一>概览
- Android 利用程序实现GPS的打开或关闭
- 翻页
- 衡量易操作数据存储(SOD)可扩展性能的十大准则(中)
- BPEL和WSDL关系
- 算法入门--堆排序2(建立最小堆,从大到小)
- 集合的排序
- Python doctest
- 在html中引入在线编辑器的代码
- 说说Android桌面(Launcher应用)背后的故事(三)——CellLayout的秘密