diff --git a/CHANGELOG.md b/CHANGELOG.md index 9680814b..cb78ac9c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **Line chart visual revamp**: Smooth cubic Bezier curves, gradient fills, dashed grid lines, vertical crosshair, glowing indicators, animated entrance, and theme-aware tooltips. - **Battery heater overlay**: Grafana-style orange annotation bands on drive detail Power and Battery charts highlighting battery pre-heating periods. - **Speed distribution histogram**: Drive details now include a speed histogram showing the percentage of time spent in each speed bucket (10 km/h or 5 mph). +- **Chinese language support**: Added Simplified Chinese (简体中文) as the 5th supported language. ## [1.2.3] - 2026-03-08 diff --git a/CLAUDE.md b/CLAUDE.md index 508d8175..f3942e57 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -26,7 +26,7 @@ * The app is published on F-Droid, which builds from source. * Fastlane metadata is stored in `fastlane/metadata/android/` with locale subdirectories: - - `en-US/` (English), `it-IT/` (Italian), `es-ES/` (Spanish), `ca-ES/` (Catalan) + - `en-US/` (English), `it-IT/` (Italian), `es-ES/` (Spanish), `ca-ES/` (Catalan), `zh-CN/` (Chinese Simplified) - Each locale contains: `title.txt`, `short_description.txt`, `full_description.txt`, and `changelogs/` - `changelogs/.txt` for each release (e.g., `24.txt` for versionCode 24) - Images are only in `en-US/images/` (icon.png, phoneScreenshots/) @@ -38,11 +38,12 @@ ## Localization * NEVER hardcode user-visible strings in Kotlin code. Always use `stringResource(R.string.xxx)`. -* When adding new UI text, add the string to all 4 locale files: +* When adding new UI text, add the string to all 5 locale files: - `res/values/strings.xml` (English, default) - `res/values-it/strings.xml` (Italian) - `res/values-es/strings.xml` (Spanish) - `res/values-ca/strings.xml` (Catalan) + - `res/values-zh/strings.xml` (Chinese, Simplified) * Use snake_case for string names (e.g., `settings_title`, `drive_history`). * Add XML comments above strings to provide context for translators. * Technical terms like AC, DC, kW, kWh should NOT be translated. diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml new file mode 100644 index 00000000..6384ad0f --- /dev/null +++ b/app/src/main/res/values-zh/strings.xml @@ -0,0 +1,1127 @@ + + + + MateDroid + + + + 取消 + 确定 + + + 未知 + + + + 选择车辆 + + + 车辆 %d + + + 已选择 + + + 选择车辆 + + + 设置 + + + 正在加载车辆数据… + + + 未找到车辆 + + + 请确认 TeslaMate API 已正确配置 + + + 数据加载失败 + + + 显示详情 + + + 错误详情 + + + 已锁定 + + + 已解锁 + + + 已插入充电线 + + + 行驶中 + + + 充电中 + + + 在线 + + + 哨兵模式已启用 + + + 车内温度 + + + 车外温度 + + + 外: + + + 内: + + + 空调已开启 + + + 空调已关闭 + + + 自 %s 起休眠 + + + 自 %s 起离线 + + + 昨天 + + + 车辆图片 - 点击查看统计 + + + 查看统计 + + + 点击查看电池健康状态 + + + 上限: %d%% + + + 上限: -- + + + kW + + + DC + + + AC + + + 电量过高 + + + 高电量状态 + 长时间将电池保持在 100% 或接近满电状态可能会加速电池老化。\n\n• NCM 电池(大多数 Tesla 车型):日常使用建议充电至 80–90%。仅在长途出行前充至 100%。\n• LFP 电池(标准续航版 Model 3/Y):可以经常充至 100%——Tesla 建议定期满充以校准电池。\n\n请尽量避免车辆长时间停放在满电状态。 + + + 位置 + + + 海拔 + + + 车辆信息 + + + 充电记录 + + + 行程记录 + + + 里程 + + + 软件 + + + 左前 + 右前 + 左后 + 右后 + + + + MateDroid 设置 + + + 正在加载设置… + + + 收起 + 展开 + + + 连接 TeslamateApi + 输入你的 TeslamateApi 服务器 URL 以连接。 + + + 服务器 URL + https://teslamate-api.example.com + + + 高级网络设置 + + + 备用服务器 URL(可选) + https://teslamate-api-internal.local + 当主服务器不可用时使用的备用 URL。适用于局域网/VPN 访问。 + + + API 令牌(可选) + 你的 API 令牌 + 如果你的 TeslamateApi 不需要身份验证,请留空。 + + + 隐藏令牌 + 显示令牌 + + + 接受无效证书 + 为自签名证书启用此选项 + 禁用证书验证会使连接容易受到中间人攻击。请仅在可信网络上使用。 + + + 显示设置 + + + 费用货币 + 选择货币 + + + 附加设置 + + + 显示短途行程/充电 + 在列表中显示极短行程和少量充电记录 + 更多信息 + + + 短途行程和充电 + 关闭时(默认),以下内容将从列表中隐藏:\n\n• 不足 1 分钟或不到 0.1 km 的行程\n• 0.1 kWh 以下的充电\n\n这些记录仍会计入总计、平均值和统计数据。启用此设置可在列表中查看所有记录。 + + + 强制全量同步 + 正在同步… + 重新下载所有行程和充电详情。如果统计数据异常,请使用此功能。 + 确定要强制全量同步? + 此操作将 + 删除 + 所有已缓存的行程、充电和统计数据,然后从服务器重新下载。\n\n此过程可能需要几分钟,具体取决于数据量。 + 同步 + + + 测试连接 + 保存并继续 + + + 预览调色板(调试) + + + 主服务器 + 备用服务器 + 已连接 + + + 反馈问题 + + + + 行程 + + + 返回 + + + 行程历史 + + + 所选时段内无行程记录 + + + 概览 + + + 总行程数 + 总距离 + 总时间 + 最高速度 + + + 距离 + 时长 + 电池 + + + 今天 + 近 7 天 + 近 30 天 + 近 90 天 + 近一年 + 全部 + + + 全部 + 通勤 (< 10 km) + 短途 (10–100 km) + 长途 (> 100 km) + + + 通勤 (< 6 mi) + 短途 (6–60 mi) + 长途 (> 60 mi) + + + 每日行程数 + 每周行程数 + 每月行程数 + + + 每日行驶时间 + 每周行驶时间 + 每月行驶时间 + + + 每日行驶距离 + 每周行驶距离 + 每月行驶距离 + + + 每日最高速度 + 每周最高速度 + 每月最高速度 + + + + 行程详情 + + + 出发 + 到达 + 未知地点 + 开始 + 结束 + + 时长: %s + + + 路线地图 + + + 速度 + 行程 + 功率 + 温度 + + + 最大 + 最小 + 平均 + 平均(距离) + 能效 + 起始 + 终止 + 已用 + 能量 + 最大(加速) + 最小(回收) + 增加 + 损耗 + 车外 + 车内 + + + 速度曲线 + 功率曲线 + 电池电量 + 海拔曲线 + + 速度分布 + + + 沿途天气 + + + + 充电记录 + + + 充电历史 + + + 位置 + 搜索 + + + 所选时段内无充电记录 + + + 总充电次数 + 总能量 + 总费用 + 平均费用/次 + + + 已充 + 费用 + + + 编辑 + + + 每日充电量 + 每周充电量 + 每月充电量 + + + 每日费用 + 每周费用 + 每月费用 + + + 每日充电次数 + 每周充电次数 + 每月充电次数 + + + + 充电详情 + + + 已充电量 + + + 充电位置 + + + 充电桩 + + + 电压(最大) + 电压(最小) + 电压(平均) + 电流(最大) + 电流(最小) + 电流(平均) + + + 总计 + 每 kWh + + + 电压曲线 + 电流曲线 + + + + 电池健康 + + + 暂无电池数据 + + + 容量 + 可用(出厂) + 可用(当前) + 额定 + + + 电池容量 + 显示电池的储能容量。\n\n• 可用(出厂):新车时的原始可用容量\n• 可用(当前):衰减后的当前可用容量\n• 额定能效:标准测试条件下的能耗 (Wh/km) + + + 预估衰减 + 损失 (kWh) + 损失 (%) + + + 预估衰减 + 电池衰减根据 TeslaMate 数据估算。\n\n• 容量 (%):与新电池相比的剩余电池健康度\n• 损失 (kWh):因衰减而损失的能量容量\n• 损失 (%):原始容量的损失百分比\n\n注意:这是一个估算值。Tesla 不提供官方衰减数据。 + + + 续航 + 最大续航(出厂) + 最大续航(当前) + 续航损失 + + + 电池详情 + + + 当前电量 + + 可用: %d%% + + + 当前电量 + 显示电池当前的充电状态。\n\n • 电池 (%):仪表盘上显示的电量百分比\n • 可用 (%):实际可用电量(Tesla 会预留少量缓冲以保护电池)\n\n这是当前电量,并非电池的长期健康状态。 + + + 续航信息 + 估算续航 + 基于当前驾驶条件 + 额定续航 + 官方 EPA/WLTP 续航 + 理想续航 + 理想驾驶条件 + + + 续航信息 + 不同方式估算你能行驶多远。\n\n• 估算续航:基于你近期的驾驶能效和当前条件\n• 额定续航:官方 EPA/WLTP 测试续航(Tesla 标称值)\n• 理想续航:完美条件下的最大理论续航(不开空调、平坦路面、适中车速) + + + 估算总容量 + 满电续航 + + 基于当前 %1$d%% 电量和 %2$.1f km 额定续航估算 + + + 估算总容量 + 推算充至 100%% 时的最大续航。\n\n通过将当前 %d%% 电量下的额定续航外推至满电来计算。\n\n这可以帮助你了解电池当前的完整容量,而无需充至 100%%(日常使用不建议满充)。 + + + 知道了 + + + 信息 + + + 关闭 + + + + 极客统计 + + + 正在同步数据… + + + 暂无统计数据。\n下拉以同步。 + + + 正在获取行程和充电数据… + + + 正在处理行程详情… + + + 正在处理充电详情… + + + 已同步 %d%% + + + 深度统计同步中 + + + 已完成 %d%% + + + 正在识别位置 + + + %1$d / %2$d 个位置 + + + 行程概览 + + + 总行程数 + + + 行驶天数 + + + 已用能量 + + + 平均能效 + + + 最高速度 + + + 费用 / 100 %1$s + + + 充电概览 + + + 总充电次数 + + + 平均费用/kWh + + + 纪录 + + + 行程 + + + 电池 + + + 天气与海拔 + + + 其他 + + + 最长行程 + + + 最高速度 + + + 最高能效 + + + 最长连续天数 + + + 最忙碌的一天 + + + 到访国家 + + + 最大电量增加 + + + 最大电量消耗 + + + 最大充电量 + + + 峰值功率 + + + 最贵充电 + + + 最高单价/kWh + + + 最高海拔 + + + 最大爬升 + + + 最热行程 + + + 最冷行程 + + + 最热充电 + + + 最冷充电 + + + 最长续航 + + + 最久未充电 + + + 最久未驾驶 + + + 最多里程日 + + + %.1f 天 + + + %d 次行程 + + + 极端温度 + + + 行驶期间 + + + 最高温 + + + 最低温 + + + 车内温度 + + + AC/DC 充电比例 + + + AC 能量 + + + DC 能量 + + + %d 次充电 + + + 同步日志 + + + 最久未%s + + + 充电 + + + 行驶 + + + 最长续航 + + + 行程 (%d) + + + 未找到行程 + + + 查看详情 + + + 查看行程 + + + + 到访国家 + + + + %d 个国家 + %d 个国家 + + + + 首次到访: %s + + + 最近到访: %s + + + + 次行程 + 次行程 + + + + + %d 次充电 + %d 次充电 + + + + 按首次到访 + + + 按字母排序 + + + 按行程数 + + + 按距离 + + + 按充电量 + + + 按充电次数 + + + 暂无国家记录。需要先同步行程详情。 + + + 排序 + + + + %s 的地区 + + + + %d 个地区 + %d 个地区 + + + + 暂无地区记录。 + + + 国家概览 + + + 充电位置 + + + %d 次充电 + %d 次充电 + + + + 行程位置 + + + %d 次行程 + %d 次行程 + + + + 充电 + 行程 + + + 起点 + + + 全部 + + + + 里程 + + + 暂无行驶数据 + + + %d 年无行驶数据 + + + 年度里程 + + + 月度里程 + + + 每日里程 + + + %d 天 + + + 最近行程 + + + 行程 + + + 总计 + + + 年均 + + + 月均 + + + 行程数 + + + 年均里程 + + + 基于自首次记录行程 %1$s 以来的日均行驶量(%2$d 天前)。\n\n计算方式:总距离 ÷ 天数 × 365 + + + 计算说明 + + + + 软件版本 + + + 近 6 个月 + + + 更新历史 + + + 未找到软件更新 + + + 概览 + + + 总更新数 + + + 平均间隔 + + + %d 天 + + + 最新 + + + 最早 + + + 每月更新数 + + + %d 次更新 + + + %.0f 次更新 + + + 查看版本说明 + + + 当前版本 + + + 安装最久 + + + 最久 + + + 安装日期 + + + 天数 + + + 时长 + + + + 全屏 + + + 退出全屏 + + + + 沿途天气 + + + 正在加载天气数据… + + + 天气数据不可用 + + + 时间 + + + 距离 + + + 天气 + + + 起点 + + + 终点 + + + 晴朗 + + + 局部多云 + + + 有雾 + + + 小雨 + + + + + + + + + 雷暴 + + + + 胎压警报 + + + 胎压偏低时发出提醒 + + + 胎压警告 + + + %1$s:%2$s 胎压偏低 + + + %s:所有轮胎胎压正常 + + + 左前轮 + 右前轮 + 左后轮 + 右后轮 + + + 模拟胎压警告 + 清除胎压状态 + 立即检查胎压 + + 模拟哨兵事件 + + + + 充电动态 + + + 充电期间的实时更新 + + + %s - 充电中 + 正在检查充电状态… + + + + 哨兵警报 + + + 哨兵模式检测到车辆附近异常时发出提醒 + + + %s - 哨兵警报 + + + + 检测到 %d 个事件 + 检测到 %d 个事件 + + + + 打开 Tesla 应用 + + + + 选择车辆外观 + + + 车型版本 + + + 轮毂样式 + + + 确认选择 + + + 自动 + + + 重置为自动检测 + + + 点击图片进行选择 + + + 再次点击以确认 + + + MY pre-2025 + MY 2025 Standard + MY 2025 Premium + MY 2025 Performance + + + M3 pre-2024 + M3 2024+ + M3 2024+ Performance + + + + LIVE + + 已用时 + + 预计完成 + + 实时充电监控需要 TeslaMate API 1.24 或更高版本 + + 车辆当前未在充电 + + 电压与电流 + + 起始 + 当前 + 目标 + + 已充电量 + 实时 + + + + Tesla 电池状态小组件 + + + 为小组件选择一辆车 + + + 加载中… + + + 点击以配置 + + + 点击打开 MateDroid + + + + 及时了解车况 + + MateDroid 可以通知你哨兵模式事件、胎压警告和充电状态。开启通知以随时了解你的车辆状况。 + + 开启通知 + + + + 那天我在哪? + + 选择日期 + + 我在哪? + + 行驶中 + + 充电中 + + 停放中 + + 查看! + + 选择日期 + + 选择时间 + + 点击查看详情 + + 该日期没有可用数据 + diff --git a/app/src/main/res/xml/locale_config.xml b/app/src/main/res/xml/locale_config.xml index 8abddc5e..6876a280 100644 --- a/app/src/main/res/xml/locale_config.xml +++ b/app/src/main/res/xml/locale_config.xml @@ -4,4 +4,5 @@ + diff --git a/fastlane/metadata/android/zh-CN/changelogs/177295425.txt b/fastlane/metadata/android/zh-CN/changelogs/177295425.txt new file mode 100644 index 00000000..09e10276 --- /dev/null +++ b/fastlane/metadata/android/zh-CN/changelogs/177295425.txt @@ -0,0 +1,7 @@ +错误修复和新的通知权限对话框。 + +新增: +- 启动时的通知权限对话框,在请求权限前说明哨兵模式、胎压和充电提醒功能 + +修复: +- Nova Launcher 及其他第三方启动器上小部件的宽高比失真问题 diff --git a/fastlane/metadata/android/zh-CN/full_description.txt b/fastlane/metadata/android/zh-CN/full_description.txt new file mode 100644 index 00000000..1ae5fa0d --- /dev/null +++ b/fastlane/metadata/android/zh-CN/full_description.txt @@ -0,0 +1,35 @@ +使用 MateDroid 掌控您的 Tesla 数据,这是 Teslamate 的配套应用,将您的驾驶和充电记录随身携带。 + +您的数据,您的服务器,您的隐私 + +MateDroid 仅连接您自托管的 Teslamate 实例。没有云服务,没有账号,没有追踪。您的 Tesla 数据永远不会经过我们的服务器,因为我们根本没有服务器。这才是隐私应有的样子。 + +一目了然 + +在精美的仪表板上查看 Tesla 的实时状态,配有与您爱车实际颜色和轮毂匹配的 3D 模型。整个应用主题会根据您的车辆颜色自适应,在浅色和深色模式下创造个性化体验。 + +您想知道的一切 + +• 实时仪表板 - 电池、续航、充电状态、空调、胎压等 +• 行程历史 - 每次旅程都有地图、能效统计、海拔曲线和沿途天气 +• 充电记录 - 追踪充电地点、充入能量、费用和充电曲线 +• 电池健康 - 通过清晰的可视化监控电池衰减 +• 极客统计 - 点击车辆查看深度统计:记录、极值、交流/直流充电比例及隐藏数据 + +离线可用 + +MateDroid 在本地同步您的数据,即使没有网络连接也能浏览行程和充电记录。非常适合在路上查看行程历史。 + +系统要求 + +此应用需要可用的 Teslamate + TeslamateApi 环境: +• Teslamate: github.com/adriankumpf/teslamate +• TeslamateApi: github.com/tobiasehlert/teslamateapi + +如果您已经在运行 Teslamate,只需部署一个 API 即可使用 MateDroid。 + +免费开源 + +MateDroid 100% 免费,没有广告、没有应用内购买、没有付费等级。完整源代码在 GitHub 上以 GPL-3.0 许可证开放。欢迎贡献! + +github.com/vide/matedroid diff --git a/fastlane/metadata/android/zh-CN/short_description.txt b/fastlane/metadata/android/zh-CN/short_description.txt new file mode 100644 index 00000000..8153c6fa --- /dev/null +++ b/fastlane/metadata/android/zh-CN/short_description.txt @@ -0,0 +1 @@ +从自托管的 Teslamate 实例查看 Tesla 车辆数据 diff --git a/fastlane/metadata/android/zh-CN/title.txt b/fastlane/metadata/android/zh-CN/title.txt new file mode 100644 index 00000000..7e50a255 --- /dev/null +++ b/fastlane/metadata/android/zh-CN/title.txt @@ -0,0 +1 @@ +MateDroid