原生App 上架 Mac App Store 过程总结

1,251 阅读3分钟

最近把开源的 RClick 发布到了 App Store,分享一下发布遇到的问题。主要分两部分,构建阶段和分发阶段

要怎么构建

原生App 在用Xcode 创建的时候,默认会创建 apple 开发证书(Development Certificates)和标识符( Identifiers),但是要分发到 App Store,需要 分发证书(Distribution Certificate)以及 Profile文件,证书设置如下

为Release添加一个 不是自动管理 的签名,Debug 模式, Signing 是 Apple Development 是自动创建的,Release 模式 Signing 是 Apple Distribution

这里涉及到一些概念,证书(Certificates),标识符(Identifiers),描述文(Frofile)

证书

Apple Developer Certificate 是 Apple 用于验证和识别开发者身份的数字证书。它是开发者在 Apple 生态系统中开发、测试、分发和发布应用程序的关键组成部分。 证书的主要用途:

  • 身份验证:通过 Apple Developer Certificate,Apple 可以验证开发者的身份,确保其在合法的开发者账户下工作。这有助于防止未经授权的代码或应用被签署和分发。

  • 代码签名:当开发者编写应用程序时,使用 Apple Developer Certificate 对代码进行签名是必须的。代码签名确保应用程序未被篡改,且是来自可信的开发者。只有签名了的应用程序才能在 iOS 或 macOS 设备上运行。

  • 应用分发App Store 分发:在将应用发布之前,应用需要使用开发者证书进行签名。

证书有很多的种类,但是按用途可以分为2大类:

  • 开发证书(Development Certificate):用于在开发过程中签名应用,允许应用在受信任的设备上进行测试。
  • 发布证书(Distribution Certificate):用于将应用分发。

下图是新建证书时显示的所有 App 的证书

所有证书

标识符(Identifiers)

标识符很好理解,是App 的一个ID,如果用 Xcode 创建的项目,会自动生成,也可以自己生成,我用的是Xcode 自己生成的

描述文(Frofile)

Profiles(描述文件)是与证书、设备、App ID 等相关的配置信息的集合,允许应用在指定的设备上运行。 用大白话说,最基本的作用是把 App ID(Identifiers) 和 证书(Certificate) 关联起来的文件。这里也可以看出,一个证书可以关联多个app。

创建描述文件三步,选择类型、关联Identifier、关联 Certificates:

选择类型

描述文件类型分开发和发布,发布macOS App要创建 Distribution ** Store Connect 类型的

关联 Identifier

关联 Certificate

构建过程

按照第一张图片,给Release 配置 分发描述文件,在Product 下面菜单选 Archive,之后出现

然后点击 Distribute App,出现下面的 窗口,选择第一个。失败会有失败的提示,成功后 到 App Store Connect 中查看

testFlight 中会有构建的版本,在测试机器上测试

到这里构建阶段完成

分发也不太容易

分发要填写很多内容,主要是 App信息,价格和销售范围的设置 也不可少

App 信息

App 信息 按提示填,关注几个点

  1. 构建版本:在这里选择 刚才上传到 App Store Connect 中的构建产物
  2. App 沙盒信息: App 用到的权限,要在这里说清楚,不然容易被打回
  3. 素材和元数据分多语言:不同的语言,预览和文档要区分一些

价格和销售范围

App 可以免费,可以付费,付费又分 买断和订阅,也可以做免费下载使用基础功能,app 内购买付费项目,值得注意的是 App 供应情况,如果不设置,在 App Store 不可见。

总结

原生 App 构建,有Xcode,只需要理解各种证书和 描述文件,设置好描述文件,总体流程比较顺畅。分发比较繁琐,要细致的按apple的要求填写,网上也不同意搜索到相关的问题答案,全靠自己摸索。下次准备分享之前 发布的非原生 App LiveCam 上架过程。