您的位置:首页 > 移动开发 > Android开发

android:apn相关资料

2012-08-16 10:39 169 查看
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.dbe:/

获取所有的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://hi.baidu.com/yimifeitian/blog/item/22e70894ed8be11f7af4808f.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: