Files
multi-simadmin/apps/ios/README.md
T
chick eb880e0d14 release(ios): 0.2.2 移除分组改用标签归类并完成石墨配色重构
- 删除分组实体:分组视图/编辑器/仓储与 groupId 全部移除,升级首启清理
  instance-groups.json 与 fleet.groupMode
- 新增批量标签表:三态覆盖度(未贴 / N/M / 全部),整批加减与新建标签
- 配色重构,全应用零蓝色:石墨墨色承担主操作与选中态,颜色只留给状态语义;
  浅色改中性冷灰,深色改低明度石墨三层
- 选中态改实心主色 + onPrimary,替换不可读的低透明度色雾(主题块、图例胶囊)
- 应用图标重做为扁平石墨底 + 黄铜 SIM 面板,参数化光栅化脚本与参考稿
- 运行概览:检测进度并入副标题,读数栅格固定八格两行并保留不可用占位
- 实例详情:仪表改两列发丝线栅格,缺数据留轨道,修掉头部高度回弹;
  补齐设备名称/存储总量/可用存储/使用率四个字段名
- 版本号显示去掉括号,设置页只显示 0.2.2
- 文档:新增 docs/ios-native-0.2.2.md,同步 ios-native.md 与两处 README
2026-09-15 02:23:24 +08:00

2.5 KiB
Raw Blame History

MultiSimAdmin iOS

iPhone 原生应用的 Swift Package。产品与技术说明见 docs/ios-native.md, 本文件只写这个目录里怎么动手。

目录

Sources/MultiSimAdmin/
  AppMetadata.swift          版本号与 Bundle ID 的唯一来源
  MultiSimAdminApp.swift     入口、三个底部 Tab、调试直达参数
  Models/                    实例、标签、查询等值类型
  Features/{Fleet,Device,Messages,Logs,Settings}/   页面与 view model
  Upstream/                  路由白名单、HTTP 客户端、按实例隔离的会话 Cookie
  Services/                  连接探测、凭据存储、依赖装配
  Persistence/               沙盒 JSON 文件仓储与日志存储
  Theme/                     颜色令牌、按钮与卡片样式、骨架、主题模式
  Support/                   错误文案、时间显示、调试启动
  Resources/                 Info.plist、Assets.xcassets
Tests/MultiSimAdminTests/    48 个用例
Design/                      图标生成脚本与参考稿

常用命令

swift build
swift test
xcodebuild -scheme MultiSimAdmin \
  -destination 'platform=iOS Simulator,id=<UDID>' \
  -configuration Debug build
swift Design/generate_app_icon.swift \
  Sources/MultiSimAdmin/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon1024.png

未签名 IPA 从仓库根目录执行 ./scripts/build-ios-ipa.sh 生成。

发版要改的地方

版本号必须四处一致,否则测试会失败:

  1. Sources/MultiSimAdmin/Resources/Info.plist 的 CFBundleShortVersionString 与 CFBundleVersion
  2. Sources/MultiSimAdmin/AppMetadata.swift
  3. Tests/MultiSimAdminTests/AppMetadataTests.swift
  4. Tests/MultiSimAdminTests/SettingsViewModelTests.swift

改完补一份 docs/ios-native-<version>.md 发布说明,并同步更新 docs/ios-native.md、仓库根 README 的版本引用。

界面约定

界面不含任何蓝色:主操作、选中态、进度填充一律用石墨墨色(AITheme.primary / AITheme.ink), 颜色只留给状态语义——危险红、告警琥珀、成功绿,且只在真的表示状态时出现,健康读数保持墨色。 选中态用实心主色加 onPrimary 文字,不用低透明度色雾,浅色深色两套主题下都必须一眼可读; 同屏并排控件等高;选中态不得改变控件尺寸;标签统一 28pt 胶囊;卡片内部不再嵌套卡片, 并列读数改用发丝线分隔的栅格;不得出现因配色而在深色背景上消失的按钮或文字。