iOS App 开发全流程指南 - 持续更新

291 阅读13分钟

本指南旨在为新手开发者提供一份清晰、完整、按部就班的操作手册,涵盖从注册开发者账号到成功将 App 发布上架的每一个环节。

第一部分:账号准备与团队设置

在编写任何代码之前,我们需要先完成基础准备工作,搭建好舞台。

1.1 注册苹果开发者企业账号

这是所有工作的起点,您的客户公司必须拥有一个官方的开发者账号。

  • 目标:获得一个合法的开发者身份,用于开发、测试和发布 App。
  • 操作人:通常是客户公司的法人或授权人。

具体流程:

  1. 申请邓白氏编码 (D-U-N-S Number)

    • 是什么:一个全球通用的九位数企业身份识别码,苹果用它来验证公司的合法性。
    • 怎么做:前往苹果的邓白氏编码查询页面(可搜索 "Apple D-U-N-S Number" 找到)免费申请。过程可能需要几天到两周。
  2. 创建公司 Apple ID

    • 是什么:一个专门用于开发者账号的公司邮箱 Apple ID,请勿使用个人邮箱。
    • 怎么做:前往苹果官网创建新 Apple ID,并务必开启双重认证。
  3. 注册开发者计划 (Apple Developer Program)

    • 是什么:付费订阅苹果的开发工具、技术资源和发布渠道。
    • 怎么做:访问 developer.apple.com,用公司 Apple ID 登录并选择注册。
    • 缴费:按提示填写公司信息、邓白氏编码,并支付年费(通常是 99 美元/年)。

1.2 团队成员管理

账号注册成功后,客户(账户持有人)需要将您和其他相关人员邀请进开发团队。

  • 目标:为不同角色的成员分配恰当的权限。
  • 操作人:客户(账户持有人)。

操作流程:

  1. 登录与访问:客户访问 developer.apple.com/account,在左侧菜单点击 “People” (成员)

  2. 邀请新成员:点击页面标题旁的蓝色 “+” 按钮。

  3. 填写邀请信息

    • 输入 Apple ID: 填入您的 Apple ID 邮箱。
    • 选择角色: 务必选择 “Admin” (管理员) 角色。这涵盖了从开发到发布的所有权限,是最省心的方式。
  4. 发送邀请:点击 “Invite” (邀请) 按钮。

  5. 您接受邀请:检查您的邮箱,找到来自苹果的邀请邮件,点击邮件中的链接并用您的 Apple ID 登录以接受邀请。

第二部分:应用开发与构建

这是将您的代码转变为可安装 App 包的核心技术环节。

2.1 配置代码签名 (Code Signing)

代码签名是证明您的 App 来源可靠且未被篡改的机制。现在,我们优先使用 Xcode 的自动管理功能。

  • 目标:让 Xcode 自动为您处理复杂的证书和描述文件,简化配置。
  • 操作人:您(开发者)。

2.1.1 推荐方式:Xcode 自动管理签名 (Automatic Signing)

  1. 在 Xcode 中登录开发者账号

    • 打开 Xcode,在顶部菜单栏选择 Xcode -> Settings (或 Preferences)。
    • 在弹出的窗口中,选择 “Accounts” (账户) 标签页。
    • 点击左下角的 “+” 号,选择 “Apple ID”,然后登录您的开发者账号 Apple ID。
    • 登录成功后,您会看到您的账号信息以及所属的团队。
  2. 在项目中启用自动签名

    • 在 Xcode 中打开您的项目,点击左侧导航栏最顶部的项目文件。
    • 在中间的编辑区,选择您的 App 的 Target
    • 选择 “Signing & Capabilities” 标签页。
    • 勾选 “Automatically manage signing” 复选框。
    • 在下方的 “Team” (团队) 下拉菜单中,选择您客户的开发团队。

深度解析:“Automatically manage signing” 的作用

  • 勾选时 (推荐) :您将签名管理的“方向盘”完全交给了 Xcode。它会自动检查、创建、更新和修复证书与描述文件。当您打包(Archive)时,它会自动使用发布证书(Distribution Certificate);当您在真机上调试时,它会自动使用开发证书(Development Certificate)。这是最省心、最适合新手的模式。
  • 不勾选时 (不推荐) :您需要手动为 Debug 和 Release 两种模式分别指定描述文件和签名证书。这种方式只在一些非常特殊或复杂的项目(例如需要自定义签名的企业级应用)中才会用到,对于绝大多数上架 App 的场景,都不需要取消勾选。

2.1.2 手动管理方式 (了解原理与排错)

在自动签名遇到无法解决的疑难问题时,了解手动流程有助于排查。

  • 核心三要素

    1. 证书 (Certificate) : 证明“您是谁”。
    2. 标识符 (Identifier / App ID) : App 的唯一“身份证号码”,即 Bundle ID
    3. 描述文件 (Provisioning Profile) : 一个“授权文件”,将证书App ID绑定在一起。

2.2 打包构建 App (Archive)

  • 目标:将您的 Xcode 项目编译、打包成一个符合苹果上架规范的 .ipa 文件。
  • 操作人:您(开发者)。

操作流程:

  1. 在 Xcode 中打开您的 ReactNative 项目的 .xcworkspace 文件。
  2. 在顶部的设备选择区域,选择 “Any iOS Device (arm64)”
  3. 在菜单栏选择 Product -> Archive
  4. Xcode 会开始编译和打包您的应用。成功后,会弹出一个 Archives 窗口,您会看到刚刚打包好的应用版本。

打包提示:遇到签名告警怎么办?

如果您在配置签名或点击 Archive 时,看到了类似下图的告警(“Communication with Apple failed” 或 “No profiles for... were found”),请按以下步骤解决:

(www.google.com/search?q=ht…)

  • 原因分析:这个告警的根本原因是,Xcode 的自动签名机制在为您创建开发描述文件 (Development Provisioning Profile) 时失败了。虽然您最终打包上架用的是发布证书,但 Xcode 需要先确保开发环境的签名是通畅的。失败通常是因为:

    1. 网络不稳定,无法连接苹果服务器。
    2. 您的开发者团队中没有任何注册过的测试设备,Xcode 不知道该为哪个设备创建描述文件。
  • 解决方案

    1. 连接一台真实设备:用数据线将您的 iPhone 或 iPad 连接到 Mac。
    2. 信任电脑:在您的 iPhone/iPad 上,会弹出“要信任此电脑吗?”的提示,请点击“信任”。
    3. 在 Xcode 中添加设备:Xcode 会自动识别到这台设备。它会将这台设备的唯一标识符 (UDID) 自动注册到您的开发者后台。
    4. 重试:回到 “Signing & Capabilities” 页面,点击告警下方的 “Try Again” 按钮。此时因为已经有了注册设备,Xcode 就能成功为您创建开发描述文件,告警会随之消失。
    5. 再次打包:签名问题解决后,再次点击 Product -> Archive 即可成功打包。

第三部分:App Store Connect 配置

这里是 App 的“货架”管理后台,您需要在这里填写所有面向用户的信息。

3.1 创建 App 记录

  • 目标:在 App Store Connect 后台为您的 App 创建一个档案。
  • 操作人:您(开发者)。

操作流程:

  1. 登录 appstoreconnect.apple.com,进入“我的 App”。

  2. 点击左上角的“+”号,选择“新建 App”。

  3. 填写“新建 App”表单

    • 公司名称: 自动填充,是客户注册的公司实体名称。

    • 名称 (Name) : App 将来在 App Store 中向用户显示的名字。例如“微信”。有 30 个字符限制。

    • 主要语言: App 信息的默认显示语言,通常选择“简体中文”。

    • 套装 ID (Bundle ID) :

      • 是什么:App 的“身份证号码”,在整个苹果生态中唯一,一旦设定无法更改。命名惯例为反向域名格式,如 com.companyname.appname
      • 怎么做:如果下拉列表中没有,您需要先去开发者网站的“Identifiers”页面注册一个新的 “Explicit” (精确) 类型的 Bundle ID。完成后再回来刷新选择。
    • SKU (库存单位) :

      • 是什么:一个您自己内部使用的、唯一的 App 标识符。它不会对用户显示,主要用于销售报告和您自己的追踪管理。
      • 怎么做:必须是唯一的,建议使用有意义的格式,例如 YYYYMMDD-AppName 或项目代号。
    • 用户访问权限: 选择“完全访问权限”。

  4. 创建:填写完所有信息并仔细检查后,点击 “创建” 按钮。

3.2 准备 App Store 上架信息

  • 目标:完善 App 在商店中的所有展示内容。
  • 操作人:您(开发者)。

主要内容:

  1. 预览和截屏

    • 必须提供 6.7 英寸 (如 iPhone 15 Pro Max) 和 5.5 英寸 (如 iPhone 8 Plus) 的屏幕快照。
    • 如果支持 iPad,还必须提供 12.9 英寸 的 iPad Pro 快照。
    • 可以使用 Xcode 模拟器来运行 App 并截取这些规定尺寸的图片。
  2. App 信息

    • 宣传文本 (Promotional Text) : 170 个字符以内,可以随时修改,用于宣传活动。
    • 描述 (Description) : 详细介绍 App 的功能、特点和用途。
    • 关键词 (Keywords) : 100 个字符以内,用逗号分隔,影响 App 的搜索结果(ASO)。
    • 支持 URL: 用户可以找到帮助信息的网页地址。
    • 营销 URL: App 的官方介绍网站地址(可选)。
  3. App 隐私

    • 提供一个有效的隐私政策网址 (URL)
    • 如实勾选您的 App 收集的数据类型(如:联系信息、位置等)及其用途。

第四部分:测试、上线与发布

这是 App 面向用户的最后冲刺阶段。

4.1 App 测试:选择合适的方式

在正式上架前,对 App 进行充分测试至关重要。苹果主要提供两种测试方式:TestFlight (官方推荐)Ad Hoc (特定场景)

4.2 TestFlight (官方推荐)

  • 目标:通过苹果官方渠道,方便地分发 App 给内部或外部人员进行测试,并高效收集反馈。
  • 操作人:您(开发者)。

操作流程:

  1. 上传构建版本:在 Xcode 的 Archives 窗口中,选中您要测试的版本,点击 “Distribute App” ,选择 “App Store Connect” 方式上传。

  2. 在 App Store Connect 中管理构建版本:上传成功并等待苹果处理完成后,登录 App Store Connect,进入 App 的 “TestFlight” 标签页。

  3. 配置内部测试 (Internal Testing)

    • 谁能测:您开发团队的成员(最多 100 人)。
    • 优点无需审核,上传即可分发,适合快速迭代。
    • 操作:在 TestFlight 页面将构建版本添加到 “App Store Connect Users” 测试组。
  4. 配置外部测试 (External Testing)

    • 谁能测:任何您想邀请的人(最多 10,000 人)。
    • 优点:覆盖面广,可获得真实用户反馈。
    • 操作:创建外部测试组,添加构建版本,并提交 Beta 版审核。审核通过后,通过邮件或公开链接邀请测试员。
  5. 测试员如何开始测试 (请将此部分发给您的测试人员)

    • 在 App Store 下载 “TestFlight” 应用 -> 接受邀请 -> 安装 App -> 截屏提交反馈。

4.3 Ad Hoc 分发 (基于 UDID 的传统测试)

  • 这是什么? Ad Hoc 是一种手动的、不经过 App Store 的分发方式。它通过提前收集每一台测试设备的唯一标识符 (UDID),生成一个包含了这些 UDID 信息的特殊描述文件。用这个文件签名的 App 安装包 (.ipa),将只能安装在这些预先注册过的设备上。

  • 适用场景

    • 客户或测试者所在的网络环境无法访问 TestFlight。
    • 需要进行离线安装测试。
    • 测试设备非常少,且固定不变。
    • 在 TestFlight 出现之前的旧项目维护。

操作流程:

  1. 获取测试设备的 UDID

    • 将 iPhone/iPad 连接到 Mac 电脑。
    • 打开 Finder (访达) ,在左侧边栏中点击您的设备。
    • 在设备信息区域,点击设备名称下方的那一行小字(如“iPhone 15 Pro, 256GB”),它会切换显示,直到出现一长串由字母和数字组成的 UDID。右键点击并拷贝它。
  2. 在开发者后台注册设备

    • 登录 developer.apple.com/account
    • 进入 “Certificates, Identifiers & Profiles” -> “Devices”
    • 点击 “+” 号,输入设备名称(方便识别)和拷贝的 UDID。
  3. 创建 Ad Hoc 描述文件

    • “Profiles” 页面,点击 “+” 号。
    • 在 Distribution (分发) 类型下,选择 “Ad Hoc” ,点击 Continue。
    • 选择对应的 App ID,Continue。
    • 选择您的发布证书 (Apple Distribution Certificate),Continue。
    • 关键一步:在设备列表中,勾选所有您希望安装此 App 的设备,Continue。
    • 为这个描述文件命名(如 AppName AdHoc Profile),然后生成并下载到您的电脑。
  4. 手动打包导出 .ipa 文件

    • 回到 Xcode,打开 Archives 窗口,选中要分发的版本,点击 “Distribute App”
    • 在分发选项中,选择 “Ad Hoc”
    • 在接下来的步骤中,Xcode 会让您选择描述文件,选择手动管理签名,并指定您刚刚下载的那个 Ad Hoc 描述文件。
    • 完成后,Xcode 会将签好名的 .ipa 文件导出到您指定的文件夹。
  5. 分发并安装 .ipa 文件

    • 将这个 .ipa 文件通过邮件、网盘等方式发送给测试者。
    • 测试者安装:最简单的方式是,测试者在 Mac 电脑上,通过 Finder 将 .ipa 文件直接拖拽到已连接的 iPhone/iPad 设备上进行安装。也可以使用第三方服务(如 airdrop)来辅助安装。

优缺点对比:

  • 优点

    • 无需审核:完全不经过苹果的任何形式的审核,分发速度快。
    • 可离线安装:一旦拿到 .ipa 文件,可以在没有网络的情况下安装。
  • 缺点

    • 流程极其繁琐:每次增加一台新测试设备,都需要重复上述所有步骤,重新打包。
    • 严格的设备上限:每年每个账号只能注册 100 台设备(每种类型),无法删除,只能在续费时重置。
    • 无内置反馈机制:无法像 TestFlight 那样方便地收集崩溃报告和用户截图反馈。
    • 对测试者不友好:安装过程相对复杂,体验不如 TestFlight。

4.4 最终提交审核与发布

  • 目标:将您的 App 提交给 App Store 审核团队,以求最终上架。
  • 操作人:您(开发者)。

操作流程:

  1. 在 App Store Connect 中,进入 App 的“准备提交”页面。

  2. 选择构建版本:点击“+”号,选择您已充分测试、准备上架的那个版本。

  3. 完成最终配置

    • 分级 (Rating) : 根据内容确定 App 的年龄分级。

    • 价格与销售范围 (Pricing and Availability) : 设置 App 是免费还是付费,以及在哪些国家或地区销售。

    • 审核信息 (Review Information) :

      • 提供一个联系人信息,以便苹果审核团队与您联系。
      • 如果 App 需要登录,必须提供一个可用的演示账号和密码
      • 在“备注”中可以说明 App 的特殊功能或需要审核人员注意的地方。
  4. 提交审核:当所有信息无误,点击右上角的“添加以供审核”按钮,确认提交。

  5. 等待审核:审核周期通常为 1-3 天。通过后,您可以选择手动发布,或设置自动发布