Android APN配置针对虚拟运营商包含以下两个字段对卡进行匹配(除了MCC、MNC之外):
- Mvno Type
- Mvno Match Data
在 APN 配置中,运营商使用MVNO=IMSI时,一般开头是mccmnc+prefix+[range],那么mccmnc和 prefix正常配置,后面range的可变范围直接用“xxxx”同等长度占位。
MVNO类型介绍
其中Mvno Type通常有如下三种类型 :GID/SPN/IMSI
1、IMSI(International Mobile Subscriber Identity):用于指定国际移动用户识别码(IMSI),这是SIM卡中的一个标识符,用于识别移动用户。
2、GID(Group Identifier Level 1):用于指定组标识级别1串,用于在MVNO网络中识别用户所属的群组。
3、SPN(Service Provider Name):用于指定服务提供商名称,用于在MVNO网络中标识服务提供商。
一般GID和SPN都能全匹配某一张卡,而IMSI可以使用模糊匹配实现一次配置则能匹配多张SIM(CarrierConfig则是正则表达式),这个需要点技术,具体要求看代码实现规范。
如mvno_type="imsi" mvno_match_data="23207718xxxxxxx",即能对应MCCMNC为232-07的卡虚拟运营商,而imsi开头是23207718,后面xxxx可匹配任何数据范围
代码逻辑
Telephony Provider
字段定义,该类维护MVNO TYPE的字符映射关系,包含spn、imsi,gid,iccid匹配项。
import