修改文件/packages/providers/TelephonyProvider/src/com/android/providers/telephony/TelephonyProvider.java
添加一个插入默认apn数据的方法
private void insertAddDefaultApns(SQLiteDatabase db)
{
ContentValues values = null;
for (int i = 0; i < APN_NAMES.length; i++)
{
values = new ContentValues();
String mcc = "460";
String mnc = "00";
String proxy = "";
String port = "";
String server = "";
String mmsProxy = "";
String mmsPort = "";
String mmsC = "";
if (APN_NAMES[i].equals("CMWAP"))
{
mmsProxy = "10.0.0.172";
mmsPort = "80";
mmsC = "http://mmsc.monternet.com";
proxy = "10.0.0.172";
port = "80";
}
String numeric = mcc + mnc;
values.put(Telephony.Carriers.NUMERIC,numeric);
values.put(Telephony.Carriers.MCC, mcc);
values.put(Telephony.Carriers.MNC, mnc);
values.put(Telephony.Carriers.NAME, APN_NAMES[i]);
values.put(Telephony.Carriers.APN, APN_APNS[i]);
values.put(Telephony.Carriers.USER, "");
values.put(Telephony.Carriers.SERVER, server);
values.put(Telephony.Carriers.MMSPROXY, mmsProxy);
values.put(Telephony.Carriers.MMSPORT, mmsPort);
values.put(Telephony.Carriers.MMSC, mmsC);
values.put(Telephony.Carriers.PROXY, proxy);
values.put(Telephony.Carriers.PORT, port);
values.put(Telephony.Carriers.PASSWORD, "");
values.put(Telephony.Carriers.TYPE, APN_APNTYPES[i]);
values.put(Telephony.Carriers.AUTH_TYPE, "None");
insertAddingDefaults(db, CARRIERS_TABLE, values);
}
}
在initDatabase方法中调用它
分享到:
相关推荐
当Android手机出现无法修改或保存APN设置的情况时,原因往往在于系统默认的APN配置与目标网络环境存在差异。例如,当使用了国外运营商定制的ROM时,其内置的APN配置可能与国内运营商的要求不符,导致用户自定义的APN...
例如,使用`ContentResolver.query()`获取APN,`ContentResolver.insert()`和`ContentResolver.update()`进行添加和修改,以及`ContentResolver.setType()`和`ContentResolver.update()`配合使用来切换默认APN。...
当UE初始化连接时,RRC Connection Setup Complete伴随着NAS的Attach Request和ESM(EPS Session Management)的PDN Connectivity Request,请求使用默认APN。随后,RRC Connection Reconfiguration和NAS的Attach ...
在Android系统中,APN(Access Point Name)是用于设置移动数据网络连接的关键参数,它定义了设备如何连接到...通过这个模块,我们可以为用户提供更便捷的方式来管理他们的移动数据连接,特别是在使用非默认APN服务时。
用户可以手动添加、编辑或删除APN,但一般情况下,新设备会预装运营商的默认APN设置。 3. **编程访问APN**:在代码中,我们可以通过`ContentResolver`和`ContentProvider`来操作APN数据库。例如,可以查询所有APN,...
2. **权限申请**:由于自定义APN涉及到系统的敏感设置,因此需要在AndroidManifest.xml中声明`android.permission.WRITE_APN_SETTINGS`权限,否则应用无法修改APN设置。 3. **APN数据结构**:APN包含多个字段,如`...
5. **禁用数据流量**:若想通过APN禁用数据流量,可以在APN设置中将默认APN的数据类型设为空,或者创建一个新的APN,将其设置为默认,并禁止数据连接。 6. **重启设备**:修改完APN配置后,需重启设备使更改生效。 ...
- 接入点类型(APN类型):定义了APN的用途,如默认、mms、supl等。 6. 完成后保存并应用新设置,设备将使用新配置的APN连接网络。 **`MyApnDemo`代码示例解析** `MyApnDemo`可能是一个Android应用,用于演示如何...
在某些情况下,用户可能需要手动添加或修改APN设置,例如当更换SIM卡或使用特殊服务时。下面将详细解释APN的工作原理、如何新增APN代码以及在Android系统中进行操作的步骤。 1. **APN工作原理** APN是移动设备连接...
在A20、A83或RK3288设备上,如果默认的APN设置不能满足需求,可以采用以下步骤进行手动或自动配置: 1. **手动设置**:进入手机的“设置” -> “网络和互联网” -> “移动网络” -> “接入点名称”,然后新建或编辑...
- **修改默认APN**:用户可以根据需要更改默认的APN设置。 - **取消默认APN**:提供选项让用户能够取消默认APN设置。 - **数据连接建立方式**: - **LTE下自动建立网络连接**:在LTE网络环境下,设备能够自动...
- **安全设置**:为了保护个人信息安全,请确保WiFi路由器的安全设置足够强,例如使用WPA2加密方式,并定期更改密码。 - **技术支持**:如果在设置过程中遇到问题,建议联系华为客服或查看官方文档获取帮助。 - **...
3. **自定义APN**:修改这些值为你所需的APN,例如`cmwap`或你从10086客服获取的特定APN。 4. **保存并重启**:保存修改后的文件,并重启G3随E行客户端。登录网络时,软件将使用你设置的APN进行连接,从而满足特定...
- type:APN的接入点类型,包括Default(默认网络)、Mms(彩信)、Supl(定位)、Dun(拨号网络)和Hipri(高优先级网络)等。 对于虚拟运营商,还需要添加mvno_type和mvno_match_data字段,用于识别特定的虚拟...
默认的运营商APN设置可以通过升级NVRAM_EF_ABM_GPRS_PROFILE_LID_VERNO来实现。例如,将版本号修改为"064"。这会更新手机的固件,以反映新的APN配置。 5. **注意事项** - 在进行数据账户配置时,必须遵循供应商...
默认情况下,系统仅允许在GSM/WCDMA网络中通过“设置”->“无线和网络”->“移动网络”->“接入点名称”选择不同的APN账户进行拨号连接。然而,对于CDMA/EVDO用户,系统并未提供相同的功能。为了解决这个问题,我们...
5. **APN类型**:定义了APN的用途,如默认、彩信、互联网等。 6. **用户名和密码**:某些APN可能需要身份验证,这时需要提供用户名和密码。 7. **Proxy和端口**:用于设置HTTP代理,如果需要的话。 在Android中,...
这些修改涵盖了权限设置、CPU型号更改、系统版本调整、获取Root权限、boot.img文件处理以及网络时间同步等几个方面。 #### 二、权限修改 1. **获取Root权限** - 使用命令`./mk-o=TARGET_BUILD_VARIANT=eng xxx new...
网络侧可以在建立默认承载后的任意时刻分配一个TFT给该默认承载,并且在后续时间里修改该默认承载的TFT或分组滤波器。 EPS专用承载 EPS专用承载是指在UE和EPC之间建立一个特定QoS和TFT的EPS承载上下文。该流程可以...
重启NTP服务以应用更改: ```bash sudo /etc/init.d/ntp restart ``` 启动NTP服务后,可能需要5-15分钟才能完成与上级NTP服务器的同步。可以使用以下命令检查同步情况: ```bash sudo watch ntpq -p ``` 如果...