一个段落的Flutter开发结束,抽空记录一下从申请账号到发布应用的一些流程点:
工具:Flutter + Vscode + Xcode + TestFlight + Mac
一.开发者账号
这个不多做赘述,有个人版本和公司整体两种,都是付费的,这个根据自身条件自行选择。
开发者账号是开发和发布开始的基础。
二.创建证书
1.创建证书请求文件
(Certificate Signing Request,简称CSR)
a.打开Mac钥匙串访问
b.选择从证书颁发机构请求证书...
c.证书助理信息
填写自己的邮件地址
常用名称
选择”存储到磁盘“并继续,不填写邮件地址,选择存放位置
d.证书请求文件创建成功
大概长这个样子
2.正式创建证书
a.登录https://developer.apple.com/account
b.选择证书
c.点击加号创建
d.选择创建类型
一般分为不同平台和不同类型(开发或者分发),我们要上架ios所以选择iOS Distribution (App Store Connect and Ad Hoc)
选择完毕后选择继续
e.上传我们第1步创建的证书请求文件
点击继续,完成上传
f.下载生成的证书文件
g.安装证书
双击安装
h.查看证书
这个时候我们在钥匙串访问 >> 我的证书 中就可以看到我们安装好的证书,里边显示了证书过期时间。
三.创建App Id
a.选择Identifiers,并点击加号创建
b.这里选择App IDs并继续
c.选择配置,我们选择第一个并继续
d.注册一个appid
根据要求的格式进行填写
点击继续,完成创建
四.描述文件
a.选择Profiles,并点击加号创建
b.根据需求选择类型,上架选择Aoo Store
c.选择App id,这里选择我们第3步注册的id
d.选择证书进行绑定,注册过的话就会在这里显示
选择后继续
f.输入描述文件的名称,最好有意义一点方便自己关联和查找
g.安装
返回列表后,在最后一栏鼠标移动上去会有一个下载按钮,点击下载并双击安装。
五.申请创建一个App
a.登录https://developer.apple.com/account
b.选择App
c.点击加号进入创建app页面
d.填写app信息
名称:跟最后打包的应用名称无关
套装id:选择自己对应申请的id
SKU:据说这个很重要,有付费需求的建议查看更多资料填写
f.创建成功
创建成功后点击app会到一个app独有的页面,其中包含了TestF、发布的版本、测试团队情况等等等等,请自行研究。
六.发布应用
这里需要用到Mac电脑中的Xcode进行打包和发布
a.首选在代码终端运行命令release一个版本
flutter build ios --release
flutter build macos --release(Mac)
b.在Xcode中, 在我们的工程目录中的ios文件夹下打开Runner.xcworkspace
c.在Xcode项目导航器中选择Runner项目。然后,在主视图边栏中,选择TARGETS Runner。
d.选择Build Settings选项卡,配置我们的证书文件
e.选择Signing & Capabilities选项卡
填入我们的注册的appid(Bundle Identifier)
选择描述文件(之前我们都创建过了,直接点击选择即可)
团队和证书可自动识
f.选择General选项卡
DisplayName:这里填写的内容是包名,不是最后app的呈现名
绑定appid(Bundle Identifier)
版本,每次发布一个版本,升级一个版本号
构建版本,这个要确保每一次都不一样,这个很重要
g.构建
点击Archive
h.构建完成后的版本列表
i.选择要发布的版本点击Distribute App发布应用
七.产品存档
1.在Xcode中:通过以下路径来查看所有的版本列表
2.查看AppStore或者TestFlight中版本
a.打开地址 https://appstoreconnect.apple.com/apps查看所有的app
b.选择一个想要查看的app点击进入发布管理主界面
c.管理TestFlight版本
d.添加测试
在内部测试中添加测试员
通过添加测试员的邮箱号来发送测试邀请
测试员下载TestFlight后再邮件中打开测试邀请,获取兑换码
在TestFlight中兑换app版本并下载
八.到期续费
我们的证书到期以后,就无法对app进行打包,那么就需要重新申请证书
a.登录我们的证书管理地址,重新生成或者续订证书
b.下载安装新的证书到电脑上
c.更新Provisioning Profile描述文件并下载安装
d.更新Xcode中的证书和描述文件
e.注意appid始终要用同一个id,否则视为在发布一个新的app
结语:只是一个大概的流程整理和记录,更多深入概念和不同业务还需要不断学习
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。