电话咨询
微信咨询
199 6386 0417
扫码添加客服

Flutter打包ios及提交App Store审核

2022-04-27 10:06:00
高玉浩
原创
2636

在macOS上搭建Flutter开发环境

准备工作:苹果开发者账号、iPone手机、Mac(或者Mac虚拟机)

• 去Flutter官网下载最新可用的安装包,转到下载页

• 下载完成后,解压安装包到你想安装的目录,笔者安装到应用程序目录。

• 配置环境变量:

1. 打开(或创建)文件。

 vim ~/.bash_profile

2. 由于国内用户受限,flutter官方提供镜像,将如下环境变量加入到用户环境变量中,输入i开始编辑:

 export PUB_HOSTED_URL=https://pub.flutter-io.cn
  export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

3. 添加flutter路径到path中:

 export PATH=`pwd`/flutter/bin:$PATH

4. 输入:wq保存,esc键退出。运行以下命令来刷新当前终端窗口:

 source ~/.bash_profile

• 安装Xcode,通过Xcode下载链接及应用商店即可下载。笔者下载的是Xcode13.2.1(一开始安装的是13.3版本,在模拟器运行时正常,但是归档时报错,后来又重新安装的13.2.1版本,结果归档成功了)。 由于macOS系统与Xcode的版本存在兼容性问题,所以可根据提示安装对应的Xcode版本。

• 运行命令检查依赖:

 flutter doctor

• 安装ios模拟器,使用以下命令找到模拟器:

 open -a Simulator

• 运行命令来启动您的应用:

 flutter run

如果运行失败并出现错误,请按照提示来解决问题。

打包ios 安装到真机测试

由于笔者用的是虚拟mac,无法使手机与Xcode连接,所以无法安装开发版本进行真机调试,只能打包发布版本上传至分发平台(笔者使用的是蒲公英,大家可以自行选择),安装到手机上测试。

• 注册一个Bundle ID

1. 打开开发者帐户的App IDs,点击 Identifiers + 创建一个Bundle ID。

2. 选择App IDs,点击Continue进入下一步。


3. 输入应用程序名称; 选择Explicit Bundle ID,然后输入一个ID,这个需要仔细命名,因为这个内容和您的程序直接相关,很多地方都需要用到,最好是com.yourcompany.yourappname的格式,如com.ydisk.ios;选择您的应用将使用的服务;点击Continue进入下一步。


4. 在下一页中,确认详细信息,然后点击 Register 注册你的Bundle ID。

• 在App Store Connect上注册应用

1. 在浏览器中打开App Store Connect。

2. 在iTunes Connect登陆页上, 点击My Apps**。

3. 点击My App页面左上角的 + ,然后选择New App

4. 填写您的应用详细信息。在Platforms部分中,确保已选中iOS。由于Flutter目前不支持tvOS,请不要选中该复选框。点击Create

5. 导航到您app的应用程序详细信息,App Information 。

6. 在General Information部分, 选择您在上一步中注册的软件包ID。

 申请证书

1. 打开钥匙串访问,点击证书助理,选择从证书颁发机构请求证书


2. 输入相应信息,点击继续


3. 点击Certificates +,选择iOS Distribution,点击Continue 进入下一步。


4. 选择刚刚创建的CSR文件,也就是证书签名请求文件,进行上传,点击continue,生成证书。


5. 点击下载,双击安装,此时在钥匙串的证书中可以看到安装的证书。

• 申请证书对应的Provisioning Profile

1. 选择Ad Hoc,点击Continue,进入下一步。


2. 选择对应的App ID,点击Continue 进入下一步。


3. 选择对应的证书,选择之前创建的发布证书,点击Continue 进入下一步。


4. 选择要安装的设备。因为笔者之前添加过设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的udid复制出来添加到Devices中,在发布Provisioning Profile文件中,是没有这一步的。


5. 输入Provisioning Profile Name,点击Generdate 生成文件。


• Xcode项目设置

1. 在Xcode中, 在你的工程目录中的ios文件夹下打开Runner.xcworkspace。

2. 要查看您的应用程序的设置,请在Xcode项目导航器中选择Runner项目。然后,在主视图边栏中,选择TARGETS Runner

3. 选择 General 选项卡,接下来,您将验证最重要的设置:

Identity 部分:

• Display Name: 要在主屏幕和其他地方显示的应用程序的名称。

• Bundle Identifier: 您在App Store Connect上注册的App ID。

• Version: 您希望发布的面向用户的版本号。

• Build: 为用于跟踪iTunes Connect上的此版本的唯一版本号,每次上传都需要一个唯一的build号。


Build Settings 部分:

• Code Signing Identity: 选择相应的证书。


Signing & Capabilities 部分:

• Automatically manage signing: Xcode是否应该自动管理应用,默认设置为true。

• Team: 选择与您注册的Apple Developer帐户关联的团队。

• Provisioning Profile: 点击下拉列表,点击Download Profile,选择之前创建的Provisioning Profile文件。

• Signing Certificate: 选择Provisioning Profile文件时,自动填入。


• Xcode归档

1. 运行flutter打包命令创建release版本。

 flutter build ios --release

2. 选择Product > Archive以生成构建档案。如果Archive为禁用状态,可选择Any iOS Device(注意:进行该步骤时,必须执行第一步的flutter命令打包,否则会报错),构建成功后,会弹出如下界面,点击右侧Distribute App按钮,进行下一步。


3. 选择Ad Hoc,点击Next进行下一步。


4. 点击Export,选择保存位置,导出文件夹。



5. 将导出的ipa包上传至蒲公英分发平台,上传完成后,会出现一个带有二维码的页面,用添加至苹果开发帐号中的UDID设备扫描二维码,安装至设备进行测试。

将应用提交给App Store进行审查和发布

• 申请Provisioning Profile的App Store文件同Ad Hoc证书的制作,这里不再详细赘述。


• 在Xcode上选择刚刚申请的申请Provisioning Profile的App Store文件,进行打包归档。

• 构建成功后,选择提交到App Store Connect。

• 在浏览器中打开App Store Connect,可以看到所有构建版本,选择要上传的应用,填写应用相关信息,最后就可以提交审核了。

说明:笔者是个人开发者账号,以上截图可能与企业开发者账号有差异。

发表评论
评论通过审核后显示。
联系我们
联系人: 高先生
电话: 19963860417
Email: service@ydisk.cn
QQ: 480247680
微信: 19963860417
地址: 青岛市黄岛区井冈山路157号中南金石国际广场A座3202室