docs: iOS 绕过 App Store 分发 VPN 渠道调研(官方七渠道+国内灰产梯度+落地建议)+ 索引登记
ci-pangolin / Lint — shellcheck (pull_request) Successful in 10s
ci-pangolin / Redline Scan — 脱敏 (UI 文案) (pull_request) Successful in 23s
ci-pangolin / Cleartext Scan — Android 禁明文 (pull_request) Successful in 20s
ci-pangolin / Flutter — analyze + test (pull_request) Successful in 37s
ci-pangolin / Portable SQL — 可移植性 (mysql/sqlite) (pull_request) Successful in 25s
ci-pangolin / Codegen Drift — token 生成物未漂移 (pull_request) Successful in 6s
ci-pangolin / DS-flow — 原型/跨端同源/代码色单源闸 (pull_request) Successful in 4s
ci-pangolin / Go — build + test (pull_request) Failing after 10s
ci-pangolin / E2E Smoke — L4 进程级端到端 (pull_request) Failing after 10s
ci-pangolin / Go — integration (mysql/redis testcontainers) (pull_request) Failing after 4m49s
ci-pangolin / Golden — 视觉回归 (全量:components/auth/desktop/tablet) (pull_request) Failing after 19s
ci-pangolin / OpenAPI Sync Check (pull_request) Failing after 12m23s
ci-pangolin / Lint — shellcheck (pull_request) Successful in 10s
ci-pangolin / Redline Scan — 脱敏 (UI 文案) (pull_request) Successful in 23s
ci-pangolin / Cleartext Scan — Android 禁明文 (pull_request) Successful in 20s
ci-pangolin / Flutter — analyze + test (pull_request) Successful in 37s
ci-pangolin / Portable SQL — 可移植性 (mysql/sqlite) (pull_request) Successful in 25s
ci-pangolin / Codegen Drift — token 生成物未漂移 (pull_request) Successful in 6s
ci-pangolin / DS-flow — 原型/跨端同源/代码色单源闸 (pull_request) Successful in 4s
ci-pangolin / Go — build + test (pull_request) Failing after 10s
ci-pangolin / E2E Smoke — L4 进程级端到端 (pull_request) Failing after 10s
ci-pangolin / Go — integration (mysql/redis testcontainers) (pull_request) Failing after 4m49s
ci-pangolin / Golden — 视觉回归 (全量:components/auth/desktop/tablet) (pull_request) Failing after 19s
ci-pangolin / OpenAPI Sync Check (pull_request) Failing after 12m23s
This commit is contained in:
@@ -153,6 +153,11 @@
|
|||||||
</a>
|
</a>
|
||||||
|
|
||||||
<h2>知识库 / 调研</h2>
|
<h2>知识库 / 调研</h2>
|
||||||
|
<a class="doc" href="ios-distribution-outside-appstore.html">
|
||||||
|
<div class="t">iOS 绕过 App Store 分发 VPN · 渠道调研与落地建议 <span class="tag html">HTML</span></div>
|
||||||
|
<div class="d">场景锁定「个人账号 + 含 NetworkExtension 的 VPN + 大陆散户」。官方七渠道评级(TF ⭐⭐⭐⭐ 唯一现实可行 / Ad Hoc·企业·ABM·EU DMA·PWA·sideload 各为何不行)+ 国内灰产梯度(超级签 16–20 元/台最稳 / 企业签共享掉签严重 / 独立稳定签 / MDM 签 / TF 代上架)+ 稳定性成本对比表 + 合规封号风险 + 给 Pangolin 的落地建议(TF 打门面 + 超级签兜底 + 落地页重装引导,主账号务必隔离)。附中英来源 URL。2026-07 联网调研。</div>
|
||||||
|
<div class="path">docs/ios-distribution-outside-appstore.html</div>
|
||||||
|
</a>
|
||||||
<a class="doc" href="pay-v2-integration-delivery.html">
|
<a class="doc" href="pay-v2-integration-delivery.html">
|
||||||
<div class="t">Pangolin × pay v2 接入 · 终验交付说明 <span class="tag html">HTML</span></div>
|
<div class="t">Pangolin × pay v2 接入 · 终验交付说明 <span class="tag html">HTML</span></div>
|
||||||
<div class="d">Task 8 终验:server/client 全量测试矩阵结果(含新增 SQLite 文件库带数据升级彩排 + MySQL 8 容器验证 000021 MODIFY ENUM)、OpenAPI 新端点登记、Self-Review 取舍、联调 checklist、部署附录(pay 种子/biz 配置/pangolin env/迁移顺序)。附带发现一处既有的 <code>wangjia/codes</code> 本地路径依赖会阻断异机构建,登记为部署前置阻断项。</div>
|
<div class="d">Task 8 终验:server/client 全量测试矩阵结果(含新增 SQLite 文件库带数据升级彩排 + MySQL 8 容器验证 000021 MODIFY ENUM)、OpenAPI 新端点登记、Self-Review 取舍、联调 checklist、部署附录(pay 种子/biz 配置/pangolin env/迁移顺序)。附带发现一处既有的 <code>wangjia/codes</code> 本地路径依赖会阻断异机构建,登记为部署前置阻断项。</div>
|
||||||
|
|||||||
@@ -0,0 +1,187 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh-CN">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>iOS 绕过 App Store 分发 VPN · 渠道调研与落地建议(2026-07)</title>
|
||||||
|
<style>
|
||||||
|
:root{
|
||||||
|
--bg:#0f1117; --panel:#171a22; --panel2:#1d2129; --fg:#e6e8ee; --fg2:#a8afbd;
|
||||||
|
--accent:#e0884f; --accent2:#5fb0c9; --ok:#5ec27a; --bad:#e06a6a; --warn:#e0b84f;
|
||||||
|
--border:#272c36; --mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
|
||||||
|
--sans:-apple-system,"PingFang SC","Helvetica Neue",Arial,sans-serif;
|
||||||
|
}
|
||||||
|
*{box-sizing:border-box}
|
||||||
|
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);line-height:1.7;font-size:15px}
|
||||||
|
.wrap{max-width:920px;margin:0 auto;padding:48px 24px 96px}
|
||||||
|
h1{font-size:30px;line-height:1.3;margin:0 0 8px;letter-spacing:-.01em}
|
||||||
|
.sub{color:var(--fg2);font-size:15px;margin:0 0 28px}
|
||||||
|
h2{font-size:21px;margin:44px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--border)}
|
||||||
|
h3{font-size:16.5px;margin:24px 0 8px;color:var(--accent)}
|
||||||
|
p{margin:10px 0}
|
||||||
|
code{font-family:var(--mono);font-size:.88em;background:var(--panel2);padding:1px 6px;border-radius:5px;color:#f0d9c4}
|
||||||
|
a{color:var(--accent2);text-decoration:none}
|
||||||
|
a:hover{text-decoration:underline}
|
||||||
|
ul{margin:8px 0;padding-left:22px}
|
||||||
|
li{margin:5px 0}
|
||||||
|
.lead{background:linear-gradient(180deg,rgba(224,136,79,.10),transparent);border:1px solid var(--border);border-radius:12px;padding:18px 20px;margin:0 0 8px}
|
||||||
|
.small{color:var(--fg2);font-size:13px}
|
||||||
|
.note{color:var(--fg2);font-size:13px;border-left:3px solid var(--border);padding-left:12px;margin:10px 0}
|
||||||
|
table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13.5px}
|
||||||
|
th,td{border:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:top}
|
||||||
|
th{background:var(--panel2);color:var(--fg);font-weight:600}
|
||||||
|
td{color:var(--fg2)}
|
||||||
|
td b,td strong{color:var(--fg)}
|
||||||
|
.bad{color:var(--bad);font-weight:700}
|
||||||
|
.ok{color:var(--ok);font-weight:700}
|
||||||
|
.warn{color:var(--warn);font-weight:700}
|
||||||
|
.rate{font-weight:700;letter-spacing:.05em}
|
||||||
|
.pill{display:inline-block;font-size:12px;padding:1px 8px;border-radius:10px;border:1px solid var(--border);color:var(--fg2);margin-left:6px}
|
||||||
|
.verdict{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:6px 14px;margin:8px 0}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="wrap">
|
||||||
|
|
||||||
|
<h1>iOS 绕过 App Store 分发 VPN · 渠道调研与落地建议</h1>
|
||||||
|
<p class="sub">场景锁定:个人 Apple Developer 账号 · 含 <code>NetworkExtension</code>/PacketTunnel · 面向中国大陆散户 · 中国区 App Store 无法上架未授权 VPN · 调研时点 2026-07</p>
|
||||||
|
|
||||||
|
<div class="lead">
|
||||||
|
<strong>一句话结论:</strong>对「个人账号 + 含 NE 的 VPN + 大陆散户」这个组合,<b>官方框架内唯一现实可行的是 TestFlight</b>(上万用户、支持 PacketTunnel、大陆可兑换),代价是 <b>每个构建 90 天滚动重传 + 每次外部测试过一次 Beta 审核</b>。其余官方渠道分别败于设备硬顶、企业门槛与吊销潮、B2B 定位、欧盟地理围栏、技术不可能。国内灰产的<b>超级签 / 企业签 / MDM 签</b>能补规模,但都建立在「滥用苹果通道」之上,<b>掉签与账号吊销是常态、不是意外</b>。行业真实做法 = <b>TF 打门面 + 超级签/独立企业签冗余兜底 + 落地页「掉线重装」引导</b>。
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h2>官方 / 半官方渠道(七条)</h2>
|
||||||
|
<table>
|
||||||
|
<tr><th>渠道</th><th>评级</th><th>人数/设备上限</th><th>NE 支持</th><th>大陆可用</th><th>为什么行 / 不行</th></tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>TestFlight</b></td>
|
||||||
|
<td class="ok rate">⭐⭐⭐⭐</td>
|
||||||
|
<td>外测 <b>10,000</b> / 内测 100</td><td class="ok">✅ PacketTunnel 完全支持</td><td class="ok">✅ 兑换链接不依赖中国区</td>
|
||||||
|
<td>唯一「官方框架内、上万级、支持 NE、覆盖大陆」的路。代价:构建 90 天过期须重传、外测每次一次 Beta App Review(比正式审核宽松,1–2 天)。VPN 过审有随机性,长期当分发渠道属灰色但目前可行。</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>Ad Hoc</b></td>
|
||||||
|
<td class="bad rate">⭐</td>
|
||||||
|
<td>每会员年<b>每类 100 台 UDID</b>(删了仍占额度)</td><td class="ok">✅(付费账号有 entitlement)</td><td class="warn">△ Diawi 等装机页大陆常连不通</td>
|
||||||
|
<td>100 台硬顶 + 逐台收 UDID,只能内测。<b>规模化分发不可行。</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>企业计划 ADEP(In-House)</b></td>
|
||||||
|
<td class="bad rate">❌</td>
|
||||||
|
<td>不限设备</td><td class="ok">✅</td><td class="warn">△ 灰市共享证书随时吊销</td>
|
||||||
|
<td>$299/年,<b>但要求法人 + 100+ 员工 + D-U-N-S + 苹果面谈</b>,个人根本不符门槛;ToS 只准分发给「自己员工」,公开分发违规;吊销后 OCSP 缓存 3–7 天全体停跑。近年苹果大幅收紧。<b>不可行。</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>ABM 自定义 App</b></td>
|
||||||
|
<td class="bad rate">❌</td>
|
||||||
|
<td>兑换码 2.5 万/周</td><td class="ok">✅</td><td class="warn">△</td>
|
||||||
|
<td>仍要过正常 App Review(VPN 审核关没绕过)+ 面向指定企业/机构,不是匿名散户。<b>为 B2B 设计,不解决大陆 C 端。</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>EU DMA 第三方市场</b><br>(AltStore PAL / Epic)</td>
|
||||||
|
<td class="bad rate">❌</td>
|
||||||
|
<td>—</td><td class="ok">✅ 政策对 VPN 较宽</td><td class="bad">✗ 硬性欧盟限定</td>
|
||||||
|
<td>装新 app 须<b>人在欧盟 + 欧盟 Apple ID</b>;走 Notarization 而非审核,对 VPN 宽松——但地理围栏使其<b>对大陆用户完全无意义</b>。还有 CTF €0.50/首年安装。</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>Web Clip / PWA</b></td>
|
||||||
|
<td class="bad rate">❌</td>
|
||||||
|
<td>—</td><td class="bad">✗ WKWebView 沙箱无 NE/TUN</td><td>—</td>
|
||||||
|
<td>技术上<b>不可能</b>做 VPN。</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>个人账号 sideload</b><br>(AltStore / Sideloadly)</td>
|
||||||
|
<td class="bad rate">⭐</td>
|
||||||
|
<td>每设备 3 app</td><td class="warn">△ 免费号<b>拿不到 VPN entitlement</b>,须付费号(又回 Ad Hoc 100 台)</td><td class="warn">△</td>
|
||||||
|
<td>免费证书 7 天、付费 1 年,须连电脑/AltServer 定期重签。<b>普通大陆用户门槛过高,规模化不现实。</b></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<h2>国内灰产签名(补规模的现实手段)</h2>
|
||||||
|
<p>官方只有 TF 一条路且有上限,大陆 VPN 实务里普遍叠加以下灰产渠道。全部建立在「滥用苹果分发通道」上,<b>掉签/吊销是结构性风险</b>。</p>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr><th>方案</th><th>原理</th><th>成本 / 计费</th><th>稳定性</th><th>掉签风险</th><th>用户操作</th></tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>超级签</b><span class="pill">最稳的灰产档</span></td>
|
||||||
|
<td>借个人号 <b>Ad Hoc</b> 通道,每号 100 台 UDID,自动收 UDID 装机,满即换号</td>
|
||||||
|
<td class="ok"><b>16–20 元/台</b>(一次性)</td>
|
||||||
|
<td class="ok">高</td>
|
||||||
|
<td class="ok">低(除非服务商用违规号被清)</td>
|
||||||
|
<td>信任描述文件,免装 MDM</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>企业签(共享证书)</b></td>
|
||||||
|
<td>共享企业证书($299)重签,免 UDID 免连电脑,网页直装</td>
|
||||||
|
<td class="warn">300–800 元/月</td>
|
||||||
|
<td class="bad">低</td>
|
||||||
|
<td class="bad">高(公开分发被苹果批量吊销)</td>
|
||||||
|
<td>网页装 + 信任企业开发者</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>企业签(独立/稳定签)</b></td>
|
||||||
|
<td>不外租的独享证书 + 多证容灾</td>
|
||||||
|
<td class="warn">1500–5000+ 元/月</td>
|
||||||
|
<td class="warn">中–较高</td>
|
||||||
|
<td class="warn"><1% ~ 中</td>
|
||||||
|
<td>网页装 + 信任</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>MDM 签</b></td>
|
||||||
|
<td>MDM 描述文件把设备标为「企业内部设备」,底层仍企业证书,按下载量计费</td>
|
||||||
|
<td class="warn">按下载量</td>
|
||||||
|
<td class="warn">中</td>
|
||||||
|
<td class="warn">中</td>
|
||||||
|
<td class="bad">须装 MDM 描述文件 + 授管理权(信任/隐私成本最高)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><b>TF 代上架</b><span class="pill">= 官方 TestFlight</span></td>
|
||||||
|
<td>第三方帮你过审、维护 TF 构建</td>
|
||||||
|
<td class="warn">代上架 ~2000/月、5000/季</td>
|
||||||
|
<td class="ok">最高(官方,不掉签)</td>
|
||||||
|
<td class="ok">不掉签,但 90 天 / 审核限</td>
|
||||||
|
<td>装官方 TF app + 链接</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<p class="note">稳定性梯度:<b>TF ≳ 超级签 > 独立企业签/稳定签 > MDM > 共享企业签</b>。单用户成本:超级签一次性最省,稳定签包月最贵。</p>
|
||||||
|
|
||||||
|
<h2>合规与账号风险(务必先读)</h2>
|
||||||
|
<ul>
|
||||||
|
<li><b>法律灰色</b>:2017 年工信部要求 VPN 服务商须持经营资质、用国营基础设施;无资质对大陆公开提供翻墙服务处灰色/违法地带。</li>
|
||||||
|
<li><b>平台层</b>:中国区 App Store 已<b>全量下架 VPN/代理工具</b>(苹果称应工信部要求);苹果对翻墙类<b>证书吊销执行较严</b>。</li>
|
||||||
|
<li><b>开发者账号</b>:用「功能开关(switch)规避审核」等手法一旦被识别,苹果可将账号<b>标记为待移除直接封号</b>(V2EX 有独立开发者被直接封号案例)。企业证书公开分发翻墙 App 尤其高危。</li>
|
||||||
|
<li class="warn">👉 对 Pangolin 而言:<b>拿你个人主账号去硬刚 VPN 分发,最坏结果是主账号被封</b>。若走灰产,务必<b>隔离账号</b>(专用于分发的独立账号),别赌主力开发者身份。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>给 Pangolin 的落地建议</h2>
|
||||||
|
<div class="verdict"><b>第 1 步(低风险、马上能做):TestFlight。</b> 你现在 iOS 已是本机直装联调。把 iOS 版提交 TF 外部测试 → 大陆用户装官方 TestFlight app + 你的公开兑换链接即可用,支持 PacketTunnel,上万名额。代价是 90 天重传 + 每次外测过 Beta 审核。审核时<b>别在描述里写"翻墙/VPN 突破防火墙"</b>,按通用「安全代理/隐私网络」类表述提交。</div>
|
||||||
|
<div class="verdict"><b>第 2 步(掉线兜底):超级签。</b> 若 TF 被拒或名额紧,叠加超级签(16–20 元/台、稳定性最高的灰产档)。官网/落地页备一条「iOS 安装」入口,TF 链接失效时切超级签重装页——和你已有的官网下载引导天然契合。</div>
|
||||||
|
<div class="verdict"><b>不建议:</b>企业签(共享)掉签太频、用户体验差;MDM 签要用户交设备管理权,对隐私敏感的 VPN 用户是劝退项;ADEP/ABM/EU 市场对你的场景直接不成立。</div>
|
||||||
|
<p class="note">现实运营模型(大陆 VPN 通行做法):<b>TF 打门面 + 超级签冗余兜底 + 落地页"无法打开?点此重装"话术</b>。没有单一稳定渠道,靠组合冗余 + 快速重装引导消化掉签。若想彻底避开吊销风险,唯一"正规"路是<b>海外区 App Store 上架 + 大陆用户自行换区</b>,但那把安装门槛推给了用户。</p>
|
||||||
|
|
||||||
|
<h2>来源</h2>
|
||||||
|
<h3>官方渠道</h3>
|
||||||
|
<ul class="small">
|
||||||
|
<li>TestFlight 上限/90天/Beta 审核:<a href="https://developer.apple.com/testflight/">developer.apple.com/testflight</a> · <a href="https://iossubmissionguide.com/testflight-beta-testing-complete-guide/">iossubmissionguide TF 指南</a></li>
|
||||||
|
<li>TF 上的 VPN/大陆实况:<a href="https://www.laddervpn.com/page/testflight">LadderVPN TestFlight</a> · <a href="https://developer.apple.com/forums/thread/115112">Apple 开发者论坛:NE on TestFlight</a></li>
|
||||||
|
<li>Ad Hoc 100 设备/1 年:<a href="https://useyourloaf.com/blog/creating-iphone-ad-hoc-distribution-builds/">useyourloaf Ad Hoc</a> · <a href="https://appcircle.io/guides/ios/ios-app-distribution">appcircle 分发指南</a></li>
|
||||||
|
<li>ADEP 门槛/吊销:<a href="https://developer.apple.com/programs/enterprise/">Apple Enterprise Program</a> · <a href="https://developer.apple.com/help/account/membership/D-U-N-S/">D-U-N-S 要求</a></li>
|
||||||
|
<li>ABM 自定义 App/兑换码:<a href="https://support.apple.com/en-us/105125">Apple 支持:Custom Apps</a></li>
|
||||||
|
<li>EU DMA / AltStore PAL / CTF / 地理围栏:<a href="https://developer.apple.com/support/alternative-app-marketplace-in-the-eu/">Apple:EU 替代市场</a> · <a href="https://www.revenuecat.com/blog/growth/apple-eu-dma-update-june-2025/">RevenueCat DMA 更新</a></li>
|
||||||
|
<li>Sideload 7 天/1 年/entitlement:<a href="https://github.com/SideStore/SideStore">SideStore</a> · <a href="https://silisko.com/ios-sideloading-complete-guide-2026/">iOS Sideloading 2026 指南</a></li>
|
||||||
|
</ul>
|
||||||
|
<h3>国内灰产签名</h3>
|
||||||
|
<ul class="small">
|
||||||
|
<li>超级签原理/掉签/单价:<a href="https://zhuanlan.zhihu.com/p/630344684">知乎:什么是超级签名</a> · <a href="https://cloud.tencent.com/developer/news/613889">腾讯云:超级签会掉签吗</a> · <a href="https://juejin.cn/post/6844903930543996935">掘金:超级签原理</a></li>
|
||||||
|
<li>企业签现状/吊销:<a href="https://www.signhome.net/news_detail?id=32">签名之家:企业签现状</a> · <a href="https://qianios.com/为什么ios企业签可能被苹果强制吊销/">qianios:为什么企业签被吊销</a></li>
|
||||||
|
<li>TF 代上架/90 天:<a href="https://learnku.com/articles/58094">learnku:TF 签名稳定性</a> · <a href="https://www.mtxer.cn/testflight.html">满天星:TF 签</a></li>
|
||||||
|
<li>MDM 签:<a href="https://www.signhome.net/news_detail?id=39">签名之家:聊聊 MDM 签名</a> · <a href="https://zhuanlan.zhihu.com/p/648307975">知乎:企业签/超级签/TF/MDM 对比</a></li>
|
||||||
|
<li>混合分发实务:<a href="https://segmentfault.com/a/1190000047703452">SegmentFault:绕过 App Store 安装全攻略</a> · <a href="https://www.sohu.com/a/914331184_122307320">搜狐:TF+企业签混合方案</a></li>
|
||||||
|
<li>合规/封号:<a href="https://m.thepaper.cn/wifiKey_detail.jsp?contid=1746839">澎湃:苹果应要求移除 VPN 应用</a> · <a href="https://www.v2ex.com/t/1222395">V2EX:苹果开发者直接封号案例</a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p class="note">调研时点 2026-07,联网检索汇总。苹果政策(尤其 EU DMA、企业证书吊销、TF 审核尺度)变动频繁,落地前请以官方文档最新状态为准。相关:<a href="pangolin-client-release-ci.html">客户端发版链路</a>(若存在)。</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Reference in New Issue
Block a user