mobile-eda/docs/PHASE4_IOS_DEPLOYMENT_GUIDE.md

14 KiB
Raw Permalink Blame History

iOS App Store 上架指南

应用名称: 移动 EDA - 原理图设计工具
Bundle ID: com.jiloukeji.mobileeda
版本: 1.0.0 (1)
文档版本: 1.0
更新日期: 2026-03-07


📋 目录

  1. 前置准备
  2. 证书配置
  3. [App Store Connect 设置](#app-store-connect 设置)
  4. 元数据准备
  5. 构建与上传
  6. 提交审核
  7. 常见问题

前置准备

1.1 账号准备

账号类型 网址 费用 状态
Apple ID appleid.apple.com 免费 需准备
Apple Developer developer.apple.com $99/年 需准备
App Store Connect appstoreconnect.apple.com 包含 需准备

1.2 开发环境

# 检查环境
flutter doctor -v

# 要求:
# ✓ Xcode 15.0+
# ✓ CocoaPods
# ✓ iOS Deployment Target >= 12.0

1.3 项目配置检查

# pubspec.yaml
version: 1.0.0+1  # version+build_number

# ios/Runner/Info.plist
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundleShortVersionString</key>
<string>1.0.0</string>
<key>MinimumOSVersion</key>
<string>12.0</string>

证书配置

2.1 创建 Apple Distribution 证书

步骤 1: 生成证书签名请求 (CSR)

1. 打开 Keychain Access (钥匙串访问)
2. 菜单Keychain Access → Certificate Assistant → Request a Certificate From a Certificate Authority
3. 填写:
   - User Email: 你的 Apple ID 邮箱
   - Common Name: 你的姓名
   - CA Email: 留空
4. 选择 "Saved to disk"
5. 点击 Continue保存为 CertificateSigningRequest.certSigningRequest

步骤 2: 在 Developer Portal 创建证书

1. 登录 https://developer.apple.com/account/resources/certificates/list
2. 点击蓝色 + 按钮
3. 选择 "Apple Distribution" (App Store 和 Ad Hoc)
4. 点击 Continue
5. 上传 CSR 文件
6. 点击 Continue → Download
7. 双击下载的 certificate.cer 安装到 Keychain

步骤 3: 导出 .p12 文件

1. Keychain Access 中找到 "Apple Distribution" 证书
2. 右键 → Export "Apple Distribution"
3. 保存为 .p12 格式
4. 设置导出密码(重要!用于 CI/CD
5. 安全备份 .p12 文件和密码

2.2 注册 App ID

1. 登录 https://developer.apple.com/account/resources/identifiers/list
2. 点击蓝色 + 按钮
3. 选择 "App IDs" → Continue
4. 选择 "App" → Continue
5. 填写:
   - Description: Mobile EDA
   - Bundle ID: Explicit → com.jiloukeji.mobileeda
6. Continue → Register

2.3 创建 App Store Provisioning Profile

1. 登录 https://developer.apple.com/account/resources/profiles/list
2. 点击蓝色 + 按钮
3. 选择 "App Store" → Continue
4. 选择 App ID: Mobile EDA (com.jiloukeji.mobileeda)
5. 选择证书Apple Distribution
6. 命名MobileEDA-AppStore
7. Continue → Generate → Download
8. 双击安装 .mobileprovision 文件

App Store Connect 设置

3.1 创建应用

1. 登录 https://appstoreconnect.apple.com
2. 点击 "我的 App"
3. 点击蓝色 + 按钮 → 新建 App
4. 填写信息:
   - 平台iOS
   - 应用名称:移动 EDA - 原理图设计工具
   - 主要语言:简体中文 (Simplified Chinese)
   - Bundle ID: com.jiloukeji.mobileeda
   - SKU: mobile-eda-001 (自定义唯一标识)
   - 用户访问权限:完全访问
5. 点击创建

3.2 填写应用信息

基本信息

字段 字符限制
名称 移动 EDA - 原理图设计工具 30
副标题 随时随地设计电路 30
隐私政策 URL https://www.jiloukeji.com/privacy -
类别 生产力 -
次要类别 工具 -

联系信息

联系人的姓:[填写]
联系人的名:[填写]
电子邮件support@jiloukeji.com
电话号码:[填写]

3.3 App Privacy 问卷

登录 https://appstoreconnect.apple.com → 选择应用 → App 隐私

数据类型申报

本应用不收集任何用户数据

✓ 数据不与用户身份关联
✓ 数据不用于追踪
✓ 数据不上传到服务器

隐私类型选择

选择:此 App 不收集任何数据

确认:
- 不收集位置、联系人、用户内容等
- 所有数据本地存储
- 无第三方 SDK 收集数据

元数据准备

4.1 应用图标

规格要求:

  • 尺寸1024 x 1024 像素
  • 格式PNG
  • 大小:< 1MB
  • 要求:无圆角、无透明、无文字

设计建议:

• 使用 EDA 相关图标(电路板、原理图符号)
• 简洁清晰,小尺寸下可识别
• 符合品牌色(蓝色系)
• 避免与现有 App Store 应用过于相似

4.2 应用截图

必选尺寸

设备 分辨率 (像素) 方向
6.7" (iPhone 14/15 Pro Max) 1290 x 2796 竖屏
6.5" (iPhone 11 Pro Max) 1242 x 2688 竖屏

截图内容规划 (推荐 5 张)

截图 1: 主界面
- 展示完整的原理图编辑界面
- 显示工具栏和元件库
- 突出流畅的编辑体验

截图 2: 元件库
- 展示丰富的元件分类
- 显示搜索和筛选功能
- 突出元件数量

截图 3: 属性编辑
- 展示属性面板
- 显示位号、值、封装编辑
- 突出专业功能

截图 4: 深色模式
- 展示深色主题界面
- 突出护眼设计
- 对比浅色模式

截图 5: 多语言支持
- 展示语言切换功能
- 显示国际化界面
- 突出全球化支持

截图制作工具

推荐工具:
• Xcode Simulator (最准确)
• Figma/Sketch (设计标注)
• 截图后使用 Photoshop 添加设备框

注意:
• 不要使用设备边框截图
• App Store 会自动添加设备框
• 确保文字清晰可读

4.3 应用描述

【标题】移动 EDA - 专业原理图设计工具

【副标题】随时随地设计电路

【描述正文】
移动 EDA 是一款专为电子工程师打造的移动端原理图设计工具,让您随时随地进行电路设计。

🔹 核心功能
• 流畅编辑:支持 1000+ 元件流畅渲染60fps 丝滑体验
• 丰富元件库:内置电源、被动元件、半导体、连接器等常用元件
• 智能连线:自动捕捉连接点,支持总线绘制
• 属性编辑:快速修改元件位号、值、封装等属性
• 深色模式:护眼深色主题,长时间使用不疲劳
• 多语言支持:简体中文、繁体中文、英文、阿拉伯语

🔹 专业特性
• 符合行业标准:遵循 EDA 行业配色和操作习惯
• 离线工作:无需联网,数据本地存储
• 快速搜索:元件库支持关键词搜索和筛选
• 撤销重做:完善的历史记录管理

🔹 适用人群
• 电子工程师
• 硬件开发者
• 电子爱好者
• 相关专业学生

🔹 技术支持
邮箱support@jiloukeji.com
网站https://www.jiloukeji.com

【更新说明】
版本 1.0.0:
• 首次发布
• 支持原理图编辑
• 内置丰富元件库
• 支持深色模式
• 支持多语言

4.4 关键词

关键词 (100 字符限制,逗号分隔):
EDA电路设计原理图电子设计,PCB硬件开发电路图,schematic,工程师

优化建议:
• 包含核心功能词
• 包含目标用户词
• 包含竞品词(谨慎)
• 避免重复和无关词

4.5 应用预览视频 (可选)

规格:
• 格式MP4, MOV
• 时长15-30 秒
• 分辨率1920x1080 或更高
• 内容:展示核心功能

注意:
• 视频静音播放
• 添加字幕说明
• 突出核心价值

构建与上传

5.1 使用 Xcode Archive (推荐)

步骤 1: 打开项目

# 打开 iOS 项目
cd mobile-eda/ios
open Runner.xcworkspace

步骤 2: 配置签名

1. 选择 Runner 项目
2. Signing & Capabilities
3. 选择 Team (你的开发者账号)
4. Bundle Identifier: com.jiloukeji.mobileeda
5. 确保 Provisioning Profile 自动管理已启用

步骤 3: Archive

1. 选择目标设备Any iOS Device (arm64)
2. Product → Scheme → Runner
3. Product → Archive
4. 等待构建完成 (约 5-10 分钟)
5. Organizer 窗口自动打开

步骤 4: 上传到 App Store Connect

1. 在 Organizer 中选择刚创建的 Archive
2. 点击 "Distribute App"
3. 选择 "App Store Connect"
4. 选择 "Upload"
5. 点击 Next
6. 确认签名配置
7. 选择 Distribution Certificate
8. 选择 Provisioning Profile
9. 点击 Upload
10. 等待上传完成

5.2 使用 Flutter 命令

# 构建 iOS Release
flutter build ios --release

# 输出位置:
# build/ios/iphoneos/Runner.app

# 然后使用 Xcode 进行 Archive 和上传

5.3 使用 fastlane (CI/CD)

安装 fastlane

# 安装
sudo gem install fastlane -NV

# 初始化
cd ios
fastlane init

配置 Fastfile

# fastlane/Fastfile

default_platform :ios

platform :ios do
  desc "推送新的 Beta 版本"
  lane :beta do
    increment_build_number
    
    build_app(
      scheme: "Runner",
      export_method: "app-store",
      export_options: {
        provisioningProfiles: {
          "com.jiloukeji.mobileeda" => "MobileEDA-AppStore"
        }
      }
    )
    
    upload_to_app_store(
      api_key_id: ENV["APP_STORE_CONNECT_API_KEY_ID"],
      api_key_issuer_id: ENV["APP_STORE_CONNECT_ISSUER_ID"],
      api_key_path: ENV["APP_STORE_CONNECT_API_KEY_PATH"]
    )
  end
end

运行 fastlane

# 设置环境变量
export APP_STORE_CONNECT_API_KEY_ID="YOUR_KEY_ID"
export APP_STORE_CONNECT_ISSUER_ID="YOUR_ISSUER_ID"
export APP_STORE_CONNECT_API_KEY_PATH="./AuthKey_XXXXXX.p8"

# 运行
cd ios
fastlane beta

5.4 创建 App Store Connect API Key (用于 fastlane)

1. 登录 https://appstoreconnect.apple.com
2. 用户和访问 → API Key
3. 点击 + 生成新密钥
4. 填写名称fastlane
5. 访问权限:管理员
6. 生成并下载 .p8 文件
7. 记录 Key ID 和 Issuer ID
8. 安全保存 .p8 文件(只能下载一次)

提交审核

6.1 选择构建版本

1. 登录 App Store Connect
2. 选择应用
3. iOS App → 1.0.0 版本
4. 构建 → 选择刚上传的构建
5. 如有合规问题,回答出口合规问卷

6.2 出口合规

问题:您的 App 是否使用加密?

回答:否

说明:
• 本应用不使用加密技术
• 无网络通信加密
• 无数据加密存储
• 符合出口豁免条件

6.3 内容分级

年龄分级4+

理由:
• 无暴力内容
• 无成人内容
• 无赌博内容
• 教育类工具应用

6.4 提交审核

1. 检查所有必填项已完成
2. 版本号正确
3. 构建已选择
4. 元数据完整
5. 点击 "添加供销售"
6. 确认提交

6.5 审核时间线

典型时间线:
• 提交后 24-48 小时:审核开始
• 审核中:状态显示 "正在审核"
• 审核完成:状态变为 "准备提交" 或 "被拒绝"
• 审核通过后24 小时内上线

加速审核:
• 一般不可用
• 紧急 Bug 修复可申请加急
• 联系 Apple 开发者支持

常见问题

Q1: Archive 失败

问题: Xcode Archive 时报错

解决方案:

1. 检查证书是否有效
2. 检查 Provisioning Profile 是否安装
3. 清理项目Product → Clean Build Folder
4. 删除 Derived Data: ~/Library/Developer/Xcode/DerivedData
5. 重新尝试

Q2: 上传失败

问题: 上传到 App Store Connect 失败

解决方案:

1. 检查网络连接
2. 检查证书是否过期
3. 检查 Provisioning Profile 是否匹配
4. 使用 Application Loader 重新上传
5. 查看错误日志

Q3: 审核被拒

常见原因:

• 元数据不完整
• 隐私政策缺失
• 功能与描述不符
• 存在 Bug 或崩溃
• 违反审核指南

应对策略:

1. 仔细阅读拒绝原因
2. 针对性修复问题
3. 在 Resolution Center 回复说明
4. 重新提交审核
5. 必要时申请复审

Q4: 版本更新

流程:

1. 修改 pubspec.yaml version
2. 修改 Info.plist CFBundleVersion
3. 重新 Archive
4. 在 App Store Connect 创建新版本
5. 上传新构建
6. 提交审核

Q5: 紧急 Bug 修复

快速通道:

1. 联系 Apple 开发者支持
2. 说明紧急情况
3. 申请加急审核
4. 通常 24-48 小时完成

附录

A. 检查清单

## iOS 提交前检查清单

### 证书和配置
- [ ] Apple Developer 账号有效
- [ ] Distribution Certificate 已创建
- [ ] Provisioning Profile 已安装
- [ ] Bundle ID 已注册

### 项目配置
- [ ] 版本号正确
- [ ] Bundle ID 正确
- [ ] 最低 iOS 版本 >= 12.0
- [ ] 所有权限已声明

### 元数据
- [ ] 应用名称 (30 字符)
- [ ] 副标题 (30 字符)
- [ ] 描述完整
- [ ] 关键词优化
- [ ] 截图齐全 (至少 1 张 6.7")
- [ ] 图标符合规格

### 合规
- [ ] 隐私政策 URL 有效
- [ ] App Privacy 问卷完成
- [ ] 出口合规确认
- [ ] 内容分级正确

### 构建
- [ ] Archive 成功
- [ ] 上传成功
- [ ] 构建在 App Store Connect 可见
- [ ] 测试 TestFlight (推荐)

B. 相关资源

C. 联系方式

  • 技术支持support@jiloukeji.com
  • 开发者咨询developer@jiloukeji.com

文档版本: 1.0
最后更新: 2026-03-07
维护: 发布工程师团队