各位 Android 开发大佬,帮忙看看我这个 pixel ims 修改哪里有问题,想用 shizuku 打开 vowifi - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
yjcn
V2EX    程序员

各位 Android 开发大佬,帮忙看看我这个 pixel ims 修改哪里有问题,想用 shizuku 打开 vowifi

  •  
  •   yjcn 279 天前 1682 次点击
    这是一个创建于 279 天前的主题,其中的信息可能已经有所发展或是发生改变。
    commit 是这个 https://github.com/yjcn/pixel-volte-patch/commit/d919161c090afa643a3c944f68698016f92283e5

    想着给 mate 20 pro 打开 vowifi 支持,看到有 pixel ims 这个 app ,可以配合 shizuku 使用

    由于 mate20pro 只支持 Android 10 ,原版应该是给 Android 11 及以上使用的,里面有些内部 api 接口有变化

    之前没写过 Android ,靠 copilot 简单改了下,获取相关服务接口都改成用反射获取,已经改了一些了,可以看下之前的 commit 记录

    现在被 carrierConfigLoader 的 getConfigForSubId 接口卡住了,反射提示没有这个接口,看了 Android 10 的源码里是有的,
    现在系统是鸿蒙 4.0 底层应该还是 Android 10 ,难道鸿蒙把这个接口删了,难道要换回 emui 吗?
    7 条回复    2025-03-14 11:49:28 +08:00
    yjcn
        1
    yjcn  
    OP
       279 天前
    报错信息

    03-12 22:20:20.975 16388 16388 E AndroidRuntime: FATAL EXCEPTION: main
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: Process: dev.bluehouse.enablevolte, PID: 16388
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: java.lang.NoSuchMethodException: com.android.internal.telephony.ICarrierConfigLoader$Stub$Proxy.getConfigForSubId [int]
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at java.lang.Class.getMethod(Class.java:2072)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at java.lang.Class.getMethod(Class.java:1693)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at dev.bluehouse.enablevolte.ModerKt.callGetConfigForSubId(Moder.kt:27)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at dev.bluehouse.enablevolte.SubscriptionModer.getBooleanValue(Moder.kt:232)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at dev.bluehouse.enablevolte.SubscriptionModer.isVoLteConfigEnabled(Moder.kt:336)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at dev.bluehouse.enablevolte.pages.ConfigKt.Config$loadFlags(Config.kt:89)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at dev.bluehouse.enablevolte.pages.ConfigKt.access$Config$loadFlags(Config.kt:1)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at dev.bluehouse.enablevolte.pages.ConfigKt$Config$1$1.invokeSuspend(Config.kt:120)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
    03-12 22:20:20.975 16388 16388 E AndroidRuntime: Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@e3fb1f6, androidx.compose.runtime.BroadcastFrameClock@39be9f7, StandaloneCoroutine{Cancelling}@6b61064, AndroidUiDispatcher@5dba2cd]
    03-12 22:20:20.987 1104 1342 E ScreemCommon: fail to extract lcd fps mode!
    03-12 22:20:20.992 1586 2099 E AwareLog: CpuKeyProcessSetVipFeature: getUidsByUid pkgName is null, uid=10888
    03-12 22:20:21.000 1586 1744 E HwSystemMemoryUtils: suspendConcurrentGc InvocationTargetException
    03-12 22:20:21.002 1586 2106 E InputDispatcher: channel 'b4cd559 dev.bluehouse.enablevolte/dev.bluehouse.enablevolte.HomeActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
    03-12 22:20:21.002 1586 2106 E InputDispatcher: channel 'b9a11ad dev.bluehouse.enablevolte/dev.bluehouse.enablevolte.HomeActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
    Donaldo
        2
    Donaldo  
       279 天前
    我逆向过 mate60pro 的 framework.jar (或者其他的某个系统应用,记不清了),里面会判断是不是国行,是的话就返回 false/null 不能开 vowifi 。所以我就放弃了
    ysc3839
        3
    ysc3839  
       279 天前
    大概需要反编译系统 Framework 看代码
    milkice
        4
    milkice  
       279 天前 via Android
    同楼上,这种情况你只能自己拿到系统文件去反编译逆向
    yjcn
        5
    yjcn  
    OP
       278 天前
    @milkice @Donaldo @ysc3839 大佬们 我反编译了 framework ,发现还是我的反射接口没写对,少了个参数,我看错了,应该是 ICarrierConfigLoader 的接口,看成 CarrierConfigManger 了,现在 app 可以正常运行了,但好像 vowifi 的开关没起作用,打开也还是显示 2g 状态,短信还是收不到,试了下 volte 开关是有作用的,关掉设置里的 VoLTE 开关就消失了,另外 pixel ims home 页面显示的 ims 状态都是未注册。

    请问各位大佬们还有什么排查思路
    milkice
        6
    milkice  
       278 天前 via Android
    @yjcn 所以运营商是哪个?中国电信?如果基带层面禁用了,这里怎么改都没用
    yjcn
        7
    yjcn  
    OP
       278 天前 via iPhone
    @milkice t mobile 哈 不是国内运营商 之前忘记说了 esim 写到 estk 卡里的 放 iPhone 上是没问题的 可以激活 voWiFi 正常使用
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5132 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 09:10 PVG 17:10 LAX 01:10 JFK 04:10
    Do have faith in what you're doing.
    ubao msn 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