apn管理

apn管理

1、简介:

每个运营商都有特定的一些apn,android 系统怎么识别和管理这些apn,本文将对这个问题做一些讨论和研究。

2、分析

2.1 流程简介

神秘的apn到底是怎么一回事,为什么插一张移动卡就会有China Mobile 的3个apn,这些数据怎么获取的?如下图所示:

 

流程简介:
1)系统启动的时候会将apns.xml 、apns-conf.xml中定义的运营商的apn加载到数据中去;
2)在系统设置里面会根据当前插入的sim卡去查询sim卡运营商相关的apn,并显示出来。
说明:从流程的第一步可以看出运营商的apn都定义在 apns.xml 、apns-conf.xml这两个xml中,如果要让系统支持某运营商,我们必须添加相应的apn到xml中,否则系统将不会查询到该卡的apn,会影响用户的上网等功能。

2.2涉及的文件

com.android.providers.telephony.TelephonyProvider
etc/apns-conf.xml
/framework/base/core/res/res/apns.xml
com.android.settings.ApnSettings

2.3 加载数据到数据库

 加载数据到数据库是在TelephonyProvider中完成的,该类是一个ContentProvider,ContentProvider就不用我在这给大家介绍啦yixia ;
1)首先是创建对应的数据库表,以下是其核心代码:

        @Override
        public void onCreate(SQLiteDatabase db) {
            // Set up the database schema
            db.execSQL("CREATE TABLE " + CARRIERS_TABLE +
                "(_id INTEGER PRIMARY KEY," +
                    "name TEXT," +
            
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值