fix(i18n): 完善国际化并迁移 WLOC 脚本

This commit is contained in:
xweiba
2026-09-11 02:39:00 +08:00
parent 908ac8f734
commit 05949703af
42 changed files with 2006 additions and 160 deletions
+20 -20
View File
@@ -108,36 +108,36 @@ final class SetupCoordinator: ObservableObject {
testLog = ""
let log = { (msg: String) in self.testLog += msg + "\n" }
log("======== 代理验证测试 ========")
log("App 版本: \(appVersion)")
log("系统版本: iOS \(UIDevice.current.systemVersion)")
log(String(localized: "======== 代理验证测试 ========"))
log(String(localized: "App 版本: \(appVersion)"))
log(String(localized: "系统版本: iOS \(UIDevice.current.systemVersion)"))
log("")
// Step A: Proxy running
log("[步骤 A] 检查代理是否运行…")
log(" 端口: 127.0.0.1:8888")
log(String(localized: "[步骤 A] 检查代理是否运行…"))
log(String(localized: " 端口: 127.0.0.1:8888"))
let stepAStart = Date()
if !proxy.isRunning {
log(" ⚠ 代理未运行,尝试启动…")
log(String(localized: " ⚠ 代理未运行,尝试启动…"))
do { try await proxy.start() } catch {
log(" ✗ 启动失败: \(error.localizedDescription)")
log(String(localized: " ✗ 启动失败: \(error.localizedDescription)"))
return .proxyNotRunning
}
log(" ✓ 代理启动成功")
log(String(localized: " ✓ 代理启动成功"))
} else {
log(" ✓ 代理已在运行中")
log(String(localized: " ✓ 代理已在运行中"))
}
collectProxyLogs(since: stepAStart, to: log)
// Step B: Combined CA + WiFi proxy check (single request)
log("")
log("[步骤 B] 检测证书与 WiFi 代理…")
log(" 方式: 请求 baidu.com/paopao-verify-<token>")
log(" 结果判定: TLS 错误=证书问题 / 响应不匹配=代理未配置 / 匹配=通过")
log(String(localized: "[步骤 B] 检测证书与 WiFi 代理…"))
log(String(localized: " 方式: 请求 baidu.com/paopao-verify-<token>"))
log(String(localized: " 结果判定: TLS 错误=证书问题 / 响应不匹配=代理未配置 / 匹配=通过"))
let stepBStart = Date()
let verifyToken = CoreBridge.refreshVerifyToken()
guard !verifyToken.isEmpty else {
log(" ✗ 无法生成验证 token")
log(String(localized: " ✗ 无法生成验证 token"))
return .certNotTrusted
}
do {
@@ -150,17 +150,17 @@ final class SetupCoordinator: ObservableObject {
let statusCode = (resp as? HTTPURLResponse)?.statusCode ?? 0
let body = String(data: data, encoding: .utf8) ?? ""
if body == verifyToken {
log(" ✓ 证书已信任,WiFi 代理已配置")
log(String(localized: " ✓ 证书已信任,WiFi 代理已配置"))
} else {
log(" ✗ 响应不匹配: HTTP \(statusCode), \(data.count) bytes,WiFi 代理未配置")
log(String(localized: " ✗ 响应不匹配: HTTP \(statusCode), \(data.count) bytes,WiFi 代理未配置"))
return .wifiProxyNotConfigured
}
} catch {
let ns = error as NSError
let msg = error.localizedDescription
log(" ✗ 请求失败 [\(ns.domain) code=\(ns.code)]: \(msg)")
log(String(localized: " ✗ 请求失败 [\(ns.domain) code=\(ns.code)]: \(msg)"))
if isCertificateTrustError(nsError: ns, message: msg) {
log(" TLS/证书校验失败,CA 证书未信任")
log(String(localized: " TLS/证书校验失败,CA 证书未信任"))
return .certNotTrusted
}
return .wifiProxyNotConfigured
@@ -168,7 +168,7 @@ final class SetupCoordinator: ObservableObject {
collectProxyLogs(since: stepBStart, to: log)
log("")
log("======== 环境检测通过 ✓ ========")
log(String(localized: "======== 环境检测通过 ✓ ========"))
return .success
}
@@ -202,9 +202,9 @@ final class SetupCoordinator: ObservableObject {
$0.source == "CORE" && $0.category == "Proxy" && $0.timestamp >= date
}
guard !proxyEntries.isEmpty else { return }
log(" --- 代理日志 ---")
log(String(localized: " --- 代理日志 ---"))
for e in proxyEntries {
log(" " + e.message)
log(" " + e.localizedMessage)
}
}
}