KirbySD
V2EX  ›  Apple

有 MobileGestalt 修改漏洞的 iOS 版本可以在国行 iPhone / 蜂窝 iPad 上开启 FaceTime Audio

  •  
  •   KirbySD · 3 days ago · 2003 views

    欢迎热心人士完善为可复用的 tweak。如果你是从本帖得到的思路,请考虑 credit 本帖。
    我并非 jailbreak 社区开发者,因此本帖不可避免地包含 AI Slop。若在意请自行退出。
    仅测试过 CH/A 的 iPhone 11 / iOS 17.0 以及 iPhone 15 Pro / iOS 18.7.2;其它系统版本请自行测试

    TL;DR
    在仍有 MobileGestalt 修改漏洞的 iOS 版本上,快捷指令导出 MobileGestalt 文件
    修改 CacheData 中的 green-tea 为 false,not-green-tea 为 true 后写回设备
    重启,确认修改生效后即可直接启用 FaceTime Audio。来去电均支持


    以前很有名的 FaceTime Audio Enabler 在 iOS17 或更新版本中 Hook 的函数似乎已经不足以开启 FaceTime Audio。

    让 6.1-sol 调查了一下,给出的结论大致总结为:

    对于我手里这台 CH/A iPhone 15 Pro / iOS 18.7.2,有以下 flag:
    green-tea = true // 是否启用国行 FaceTime Audio 限制
    venice = true // 是否支持 FaceTime Video
    voip = true
    RegionalBehaviorNoVOIP = false

    FaceTime Audio 可用 = venice && (!green-tea || 运营商明确允许 FaceTime Audio)

    因此只要能想办法将 green-tea 改为 false,即可让国行机器支持 FaceTime Audio。
    而我的运气很好,6.1-sol 发现这一个 flag 也在 MobileGestalt 缓存里,因此修改对应缓存即有可能启用 FaceTime Audio。

    注意
    我的机器为了强开 Apple Intelligence,修改过设备区域为 LL/A。
    我没有做对照实验。如果如果仅修改 green-tea 无法启用,可能需要考虑修改设备区域。

    开启步骤大致如下:

    1. 用快捷指令导出设备的 MobileGestalt 文件
    2. 将设备接入 PC / Mac,让你的 Agent 查找你的机器和系统版本上 green-tea 和 not-green-tea 在 CacheData 里对应的偏移。这一步不需要越狱
      可以指示你的 Agent “通过 USB 隧道读取 dyld 共享缓存列表”。至少 6.1-sol 是这么做的
      (iPhone 11 / iOS 17.0 和这台机器的 CacheData 里,这两个 bool 的偏移位置并不相同。因此不建议不同机型/系统版本混用 Template)
    3. 让你的 Agent 生成用于 Nugget 的 Template
    4. 备份你的数据。如果你不怕死,可以跳过这一步
    5. 用 Nugget 应用 Template 但不要指定 MobileGestalt 文件,将修改写回设备并重启

    做完上述操作,理论上 FaceTime Audio 应该可用。你的其它 Apple 设备应该会提示有新设备可用于 FaceTime。
    已配对的国行 Apple Watch 理论上也应该会响铃且能接听/和手机之间双向转移通话
    如果重启后仍然不可用,重新导出 MobileGestalt 确定 CacheData 的写入是否生效。

    6 replies  •  2026-10-07 23:02:41 +08:00
    Lentin
        1
    Lentin  
       3 days ago via iPhone
    作用有限,audio 这玩意要求双端都支持才能打通
    samsum
        2
    samsum  
       3 days ago
    ios26.1 的 MobileGestalt 文件 CacheData 中已没有 green-tea ,not-green-tea 这 2 个键值
    samsum
        3
    samsum  
       3 days ago
    我国行修改成 LL/A 强开 ai 后重新用捷径导出 MobileGestalt 文件发现 LL/A 变成 C/A 了
    KirbySD
        4
    KirbySD  
    OP
       3 days ago
    @samsum 我的 27.0 developer beta 4 仍然有这两个 key
    这两个 key 不是 plist 里面的 key-value ,是那个很大的 base64 编码后的 CacheData 里面的两个 bit
    所以我主帖说要让 Agent 去根据实机查偏移后再改那两个 bit 这两个 bool 不像设备区域是 string 手工改起来很麻烦的
    samsum
        5
    samsum  
       3 days ago
    @KirbySD 能出个大致的教程吗?主要是怕搞错写回手机变白苹果了
    VincentChan94
        6
    VincentChan94  
       1 day ago via iPhone
    借帖问一个 iOS 27beta4 修改地区强开 Apple Intelligence 后,报错 Sorry, something’s gone wrong. Please try again. 之前貌似可以用,突然不能用了,美区账号,英文,地区美国 都是弄过的 代理全局也试了 就是不行
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3225 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 13:37 · PVG 21:37 · LAX 06:37 · JFK 09:37
    ♥ Do have faith in what you're doing.