在任意 Android 高通设备上强行开启中国电信 VoWiFi - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
milkice
V2EX    Android

在任意 Android 高通设备上强行开启中国电信 VoWiFi

  •  1
     
  •   milkice 212 天前 5644 次点击
    这是一个创建于 212 天前的主题,其中的信息可能已经有所发展或是发生改变。

    电信 VoWifi 逐渐在很多城市铺设,但是只有新发的国行 Android 手机才默认启用了电信的 VoWiFi 支持,旧设备则是被统统抛弃了。

    由于深受室内信号差的苦恼,一直想要在自己的手机上启用电信 VoWiFi 支持,经过几个星期的研究终于成功在美版 moto 激活了电信 VoWiFi ,趁着自己还没忘记步骤赶紧把流程记录了下来放在了博客上,分享给想要自己 DIY 小伙伴,也希望能踊跃分享自己的测试结果(因为目前并不是所有设备上都能成功)

    moto

    文章地址: https://milkice.me/2025/03/11/let-your-qualcomm-device-support-ct-vowifi/

    注意设备需要 root 权限,目前该方案也仅限于高通设备

    34 条回复    2025-03-13 13:59:39 +08:00
    zhinianyuxin0
        1
    zhinianyuxin0  
       212 天前
    实在是 Too Hardcore
    leconio
        2
    leconio  
       212 天前 via iPhone
    这个是 WiFi calling 吗,ios 能开吗?
    milkice
        3
    milkice  
    OP
       212 天前   1
    @leconio 是 Wifi Calling ,iOS 仅有 18.0 beta 4 ~ 6 支持,等电信正式开放 VoWiFi 吧
    lengrongec
        4
    lengrongec  
       212 天前
    楼主分享给力
    lengrongec
        5
    lengrongec  
       212 天前
    也很关注电信的 vowifi ,但是 iPhone 端感觉要扯淡
    liuidetmks
        6
    liuidetmks  
       212 天前   1
    orz ,黄老爷又高又硬
    NessajCN
        7
    NessajCN  
       212 天前
    这个是运营商限制吧,跟手机也有关系吗?
    至少我的红米 k30su 上启用国外 sim 卡的 vowifi 是去设置里直接开就好
    milkice
        8
    milkice  
    OP
       212 天前
    @NessajCN 当然有关系,基带里的运营商配置文件可以直接限制 IMS 相关功能包括 VoLTE/VoWiFi
    NessajCN
        9
    NessajCN  
       212 天前   1
    @milkice 一定要去改已经 build 好的基带文件吗
    根据
    https://source.android.com/docs/core/connect/carrier
    是不是有这么一个系统文件,改里面的配置就能实现覆盖基带里的云苦海配置?
    譬如你要的 vowifi 是不是在这里能找到?
    https://developer.android.com/reference/android/telephony/CarrierConfigManager.html
    NessajCN
        10
    NessajCN  
       212 天前
    打错字。云苦海-> 运营商
    Tink
        11
    Tink  
    PRO
       212 天前   1
    我去有点太难了
    Cipool
        12
    Cipool  
       212 天前
    很少看到类似的技术好文了,另外现在电信的 vowifi 是不是还限制电信 IP 呢
    SkywalkerJi
        13
    SkywalkerJi  
       212 天前 via Android
    厉害了
    milkice
        14
    milkice  
    OP
       212 天前
    @NessajCN 博文里提到过,基带是单独的组件,你发的这个应该是系统层面的“软性”的运营商配置,而实际上还需要搞定基带这种“硬性”层面,因为具体的实现都是由基带来操作,系统管不着
    milkice
        15
    milkice  
    OP
       212 天前
    @Cipool 是的,需要电信家宽
    billlee
        16
    billlee  
       212 天前
    一定要改 EFS 吗?以前高通平台启用 volte 的时候用 magisk 改 vendor 里面的 mbn 也能生效
    NessajCN
        17
    NessajCN  
       212 天前
    @milkice 我还没细查是不是能覆盖掉基带运营商配置
    但是运营商的具体配置文件是肯定可以查到的。
    https://cs.android.com/android/platform/superproject/main/+/main:packages/apps/CarrierConfig/assets/carrier_config_carrierid_2237_China-Telecom.xml
    seers
        18
    seers  
       212 天前 via Android
    基带层面不一定完全遵守系统层面的配置,改底层一劳永逸
    Cipool
        19
    Cipool  
       212 天前
    @milkice 这样来看国内的 vowifi 还是停滞不前
    galenzhao
        20
    galenzhao  
       212 天前
    联通可搞么?
    还有就是联通那个体验小程序预约不了的地区是不是就完全没办法了
    milkice
        21
    milkice  
    OP
       212 天前
    @billlee 如果你能找到同厂商签名同 SoC 的 MBN ,那就是一劳永逸的解决方式,你说的其实对应了我文章里的“直接替换 modem 分区下 MBN 文件”这一流程,自然是能生效的
    milkice
        22
    milkice  
    OP
       212 天前
    @NessajCN 对我看到了,包括 Pixel 系列都会有个自带的 Carrier Config 的 App ,不过目前我没条件去做测试,这篇文章着重点在于直接修改基带底层
    milkice
        23
    milkice  
    OP
       212 天前
    @galenzhao 不可以,联通没有开通 ePDG 网关,小程序走的是不同的技术路线
    heqirong
        24
    heqirong  
       212 天前
    仅限高通啊,那 pixel 的自研芯片没戏了?
    billlee
        25
    billlee  
       212 天前
    @milkice 原来还要同签名啊,以前高通平台的 pixel 都是拿小米的 mbn 去替换的,我还以为没签名校验呢
    xuquanoo
        26
    xuquanoo  
       212 天前
    内网是几层 NAT 之后有影响吗?还是必须直连电信光猫发出来的 wifi ?意思就是电信光猫后面 NAT 形式串了两个路由器,连那两个路由器的 wifi ,可以实现 vowifi 吗?
    milkice
        27
    milkice  
    OP
       212 天前
    @xuquanoo NAT 无关,不是,可以,只要最上游是光猫拨号且下游路由器可以解析电信的 eDPG 地址( epdg.epc.mnc011.mcc460.pub.3gppnetwork.org )且可以 ping 通即可
    satanandroid
        28
    satanandroid  
       212 天前
    谢谢分享.
    "注意设备需要 root 权限" 放弃了,没条件
    yjcn
        29
    yjcn  
       212 天前
    @milkice 大佬 正好我也在研究 vowifi 可以帮忙看看吗? t/1117972
    aqc113
        30
    aqc113  
       211 天前
    @NessajCN #17
    @milkice #22

    启用 volte/vowifi 需要两个前提:基带文件(即文章中的 mbn),运营商配置,缺一不可
    运营商配置即 CarrierConfig 在/data/user_de/0/com.android.phone/files ,每个文件对应某个 iccid 的卡

    改 CarrierConfig 主要发挥的作用是楼主文章中的"系统层面启用 VoLTE/VoWiFi"以及"nv/item_files/ims/qp_ims_service_enablement_config"这两项;
    相对于改 nv/build.prop 这些方法,改 CarrierConfig 的优点在于不需要碰 efs 分区,同时可以分别记住手机中插过的每张卡的配置
    milkice
        32
    milkice  
    OP
       211 天前 via Android
    @asde111 改 CarrierConfig 可以 qs_ims_service_enablement 里面的配置吗 这个真不知道唉
    crystalfairy
        33
    crystalfairy  
       211 天前
    请问 op 搭建博客的服务器是哪家的?我最近准备想换个服务商。
    milkice
        34
    milkice  
    OP
       211 天前
    @crystalfairy Oracle 首尔
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2858 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 14:24 PVG 22:24 LAX 07:24 JFK 10:24
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86