android之APN
APN全称是Access Point Name,中文即接入点,是通过手机上网时必须配置的一个参数,它决定了手机通过哪种接入方式来访问网络。
android系统把所有的APN都保存在数据库中,数据库绝对路径:/data/data/com.android.providers.telephony/databases/telephony.db。
使用adb命令可以把该数据库导出查看:
adb pull /data/data/com.android.providers.telephony/databases/telephony.db e:/
获取所有的APN的uri地址为"content://telephony/carriers"。
获取当前使用APN的uri地址为"content://telephony/carriers/preferapn"。
android当前apn保存在一个xml文件里,绝对路径:/data/data/com.android.providers.telephony/shared_prefs/preferred-apn.xml 。
使用命令导出查看:
adb pull /data/data/com.android.providers.telephony/shared_prefs/preferred-apn.xml e:/
内容如下:
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> <map>
<long name="apn_id" value="2" />
</map>
实例代码:
//获取所有apn Uri uri = Uri.parse("content://telephony/carriers"); Cursor cr = getContentResolver().query(uri, null, null, null, null); //遍历所有apn while(cr!=null && cr.moveToNext()){ // APN id String id = cr.getString(cr.getColumnIndex("_id")); // APN name String apn = cr.getString(cr.getColumnIndex("apn")); 。。。。 } //获取当前apn Uri uri = Uri.parse("content://telephony/carriers/preferapn"); Cursor cr = getContentResolver().query(uri, null, null, null, null); //修改当前apn Uri uri = Uri.parse("content://telephony/carriers/preferapn"); ContentResolver resolver = getContentResolver(); ContentValues values = new ContentValues(); values.put("apn_id", id); resolver.update(uri, values, null, null);
本文转自:http://blog.163.com/yimigao@126/blog/static/6715605020114234013308/
android之APN的更多相关文章
- Android系统APN配置具体解释
Android 系统APN配置具体解释 这些天一直在调系统原生的Settings.apk里面APN配置的问题.在设置里面手动添加了APN配置选项.可是在界面上还是看不到.所以跟了下代码.原以为就是简 ...
- Android手机APN设置(中国移动 联通3G 电信天翼),解决不能上网的问题
中国移动 第一步,设置CMNET上网 新建APN 1.名称:cmnet 2.APN:cmnet 3.APN类型:default 就仅仅填写上面3个选项,其它都是默认,不用填写. 第二步,设置彩信 新建 ...
- android CMWAP, CMNET有何差别
什么是CMNET,什么是CMWAP? 答:CMWAP和CMNET仅仅是中国移动为其划分的两个GPRS接入方式.中国移动对CMWAP作了一定的限制,主要表如今CMWAP接入时仅仅能訪问GPRS网络内的I ...
- Android编程实用代码合集
1.android dp和px之间转换public class DensityUtil { /** * 根据手机的分辨率从 dip 的单位 转成为 px(像素) */ public static in ...
- No permission to write APN settings: Neither user *** nor current process has android.permission.WRITE_APN_SETTINGS.
在ICS40以前的版本中,如果程序需要设置APN,只需要在AndroidManifest文件中声明这个权限即可.在40的机器上运行则会抛出以下异常:java.lang.SecurityExceptio ...
- Android与.Net交互模拟用户屏幕操作添加APN和网络4G/3G切换
前几天接到一个需求,我们的客户需要对手机网络接入点进行可用性测试,简单点说就是需要实现Android上的APN配置的添加,APN切换网络模式4G/3G/2G切换,我要调研下写个demo. 因为是要实现 ...
- Android APN配置
APN概念 APN(Access Point Name),即“接入点名称”,用来标识GPRS的业务种类,目前分为两大类:CMWAP(通过GPRS访问WAP业务).CMNET(除了WAP以外的服务目前都 ...
- Android手机通过APN设置上网的方法
今天一个朋友问了我关于android网络设置的问题,感觉还是挺有趣,特分享如下: 他是在香港买了一款LGP500的手机,系统是android系统,但是回来之后不能上网,于是在网上搜了很多资料,但是设置 ...
- Android APN
https://www.cnblogs.com/sishuiliuyun/p/3754516.html android系统把所有的APN都保存在数据库中,数据库绝对路径:/data/data/com. ...
随机推荐
- 【IOCP】 IOCP模型属于一种通讯模型- 较难
http://baike.baidu.com/link?url=e9vXkKd2aHp8VDr1XTURdwQB4K85r28IYjeMwRIyuaXtsrCsXHY1eohiFgsDXRYRlj6x ...
- EXTJS 4.2 日期控件
{ xtype: "fieldcontainer", layout: "hbox", items: [{ fieldLabel: '开始时间', name: ' ...
- JQuery 知识点
1:animate 动画效果 $(function () { $(".sidebar-nav a").mouseover(function () { $(this).animate ...
- Nhibernate 一对一关系映射(主键映射)
参考:点击这里 妈的,搞了一天了,终于可以了,现在总结下,以防下次再出现这样痛苦的问题了,有两个表:user(用户)和Blog(设置表),它们之间的关系正如我所说的是一对一的关系.现在我们来映射这两个 ...
- tar 解压缩命令
tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...
- C#跳出循环的几种方法的区别
break是循环结束执行,执行循环体后面的代码. continue是跳过本次循环未执行的代码,继续执行下一次循环. goto是跳到指定的指令去,你指哪,他跳到哪. return是函数返回,如果循环在M ...
- Topo图
http://blog.csdn.net/youfangyuan/article/details/8367398 http://joshuaxiao.iteye.com/blog/2224120 ht ...
- POJ1151+线段树+扫描线
/* 线段树+扫描线+离散化 求多个矩形的面积 */ #include<stdio.h> #include<string.h> #include<stdlib.h> ...
- html--offsetLeft,Left,clientLeft的关键--动态获取计算元素位置关系
动态计算元素位置关系的时候,必备... http://www.cnblogs.com/panjun-Donet/articles/1294033.html
- MyBatis的动态SQL操作--删除
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUYAAAC/CAIAAAANX+LCAAAYvElEQVR4nO2dWWycV9nHDyC6UEGBGy