最新上架App Store 全流程
前言
过完年回来app上架到App Store,虽然之前上架过,还是遇到不少坑,特别是配置证书的时候,还好是上架是一次性通过,整理一份详细图文详解。项目是flutter项目上架到测试纸怀孕图片App Store,与原始的iOios鲁多多appS上架还是有些差别。
环境
macOS 10.15.7
Flutter 2.0.6
Xcode Version 12.4
vscode
Apple Developer 配置
developer.apple.com 点击“Account”栏目
如果该App需要多人协作开发,请进入People进入人员编辑。注意负责上架AppStore的人员需要有管理级别的权限
然后点击 Certificates, Identifiers &amgoogle中国p; Profiles 图标
1. Certificates:证书
Certificates作用是为Mac电脑提供开发能力,具有Certificates的Mac电脑能够真机调试、打包、Flutter上架APP到app store。
CertificmacOSates有两种环境:开发(Development测试工程师)环境和生产(Distribution)环境。
Certificates还ios越狱有两种类型:Software 和 Services。
简单理解:
(1).开发环境(Development):直接用Xcode调试debug就属于开发测试手机是否被监控环境,在模拟器上debug是不需要Certificfluttershyates的。但是在真机上调试运行就需要Certificates开发证书macos和windows区别,发布到APP Store 需要 Certificates 生产证书。
(2).生产环境ios启动器(Distribution):上架app store,打包生flutter是什么意思成ipa包等都属于生产环境。只要是通过Archive生成都都是属于iOS生产环境。
(3). Software: 使测试抑郁程度的问卷mac具有相应的开发和发布能力,一台Mac只需要建立一套flutter框架即可。
(4). Services: Apple提供的额外服务,最常见的就是消息推送服务,会针对不同的App建立不同的Services Cermacos montereytificamacos最新版本tes,macosx毕竟每个aflutter菜鸟教程pp需要的Services不同。
针ios14.4.1更新了什么对Software部分需要注意:
Certificates是对Mac电脑有效的,是根据Mac的CSR请googleplay求证书创建的,而不是对app,所以Certificates的开发(Development)证书和发布(Distribution)证书是有数量限制的。超过数量就不能再创建了,除非删除已有的证书。
只要你这个Mac电脑拥有了CertiOSificates证书,就能用申请Certificates的账号在这个Mac上开发多个app而不需要再重新申请Certificates。所以正确操作是macos10136怎么升级,对一个Mac电脑,只需要申请一套Certificates就好了,在创建第二个第三app时不需要再去创建一套Certificates。
Services的证书是需要另外创建的,而且没有数量限制,但是还是建议只用一台google商店Mac创建就好,他人合作导出.p12文件给对方Mac安装即可。
Software和测试你适合学心理学吗Services都是和Mgoogleplay安卓版下载ac绑定的:
Certificates是和Mac绑定的,不能直接copy给其他Mac使用,但是Certificates可以导google谷歌搜索主页出.p12给其他Mac电脑用的,导出的.p12同样具有测试打包和发布的能力。如果多人协同开发,第二个Mac也是不需要再去申请一套Certificategoogle翻译s的。用他人Mac电脑上Certificates导出的.p12文件安装上即可。
Certificates:证书
(1) 通过Mac钥匙串管理工具生成CSR请求文件,用于申请测试工程师Certificates,与Certificates绑定
(2) 申请开发Development证书 先创建software部分,再创建推送证书部分。
选择iOS Development ,创建iOS Development 开发证书。Xcode11以上可以创建Apple Devmacoscatalinaelopment 证书.
contigoogle中国nue 下一步
选择刚刚的证ios12书文件,
下载下来,名称是googleplay development.cer, 如果是选择了iOS App Develgoogleopment 证书则名称是 ios_development.cer,最好改一下名称,方便识别。
然后双击按钮macos是什么意思,打开钥匙串管理工具,在我的证书 就能看到安装了,需要注意的是现实的名称 不是文件名,是你开发者账号的个人team名称,里面的秘钥名称就是你刚刚填写的名称
(3) 申请iOS Distribution (App Store and Ad Hoc)生产证书
方法与上面一样,只是选择的时候选iOS Distribution (App Store and Ad Hoc)类型
然后上传CSR文件,R测试egiste测试智商r,Download, 该名称。
(4) 推送证书申请
推送证书的申请与第二部分是一样的,只是中间会让选择证书绑定的App id。(这里需要先创建Identifiers,查看步骤2.Identifiers:App 身份证)
同样,需要申请Development和Distribuios15tion两种环境。
选择Mac钥匙串工具导出的.certSigningRequest文件,与这台Mac绑定。
2.Idgoogleentifiers:App id
iOS每个APP都有自己唯一的身份证(Identifiers测试抑郁程度的问卷)。app的身份证就在这里申请,也就是app的唯一标识。
填写app描述,和Bundle ID
关于Bundle ID:十分重要的东西,可以理解为app的身份证号码。所有app都是唯一的。为了避免重复和辨识,一般都采用反域名的格式+app名称。
如图所示。这里一经申请变无法更改,在每个项目建立时就应该事先定义好app的Bios系统undle ID。Bundlmacosxe ID除了这里申请app需要用到以外,在申请第三方服务:如微信登陆、友盟推送、google服务等等都需要使用到Bundle ID与你的app绑定。所以,Bundle ID非常重要。
一般,我们会采用Explicit(明确的)Bundle ID标识,而不会采用Wildcard(通配符)来定义Bundle ID。
如果采用了,会导致推送这部分是没用的。
然后Register,回到 identifiers列表页可以看到刚刚创建的。
3.Devi测试ces: 设备列表
app的每个设备都有唯一测试智商的udid。将udid加入到Devices列表后,这些设备具有debug测试和ad hoc安装能力。
反正,Google需要测试的iPhone,iPad都需要加入到这个列表里面。
Devios系统ices设备列表是针对开发者账号,所以也只需要添加一次。
如何查看设备的macos最新版本udid。有很多方法,
1.Xcode查看(开发者查看自己的)
2.用蒲公英 www.pgyer.com/tools/udid
添加设备列表
4.Profiles: 描述文件
描述文件Profiles将team、Identifios14.4.1更新了什么iers、Certificates、Devices等信息联系起来。
Profiles同样分为两种环境:开发(Development)环境Flutter和发布(Distribution)环境,不同的环境需建立不同的描述文件Profiles。
描述文件是这对app绑定的,所以每个APP都会建立相应的一套描述文件。但是描述文件可copy给其他Mac使ios12用,但是对于的Mac需要安装测试抑郁程度的问卷相应的Certificates导出的.p12文件。
创建描述文件
将上面创建的所有信息联系起来,供xcode使用。
同样分别创建De测试抑郁症的20道题velopment和Distribution两种环境的描述文件
选择App ID
开发环境和Ad Hoc需要选择需要测试的Devices设备,选中的Devices才具有测试和安装能力。全选即可。
然后下载,重命flutter框架名。描述文件不需要安装
至此所有准备的证书和描述文件都创建完毕。
5.X测试智商code配置
(1)登录Xcode开发者账号,这一步容易忘记,特测试抑郁症的20道题别是新的苹果账号,当然也可以到里面选择证书再配置
(2) 配置证书及签名
首先需要取消Automatically managgoogle商店e signing。否则是XCode自动管理证书,会自动创建证书和bundle id等。这样会不利于证书管理。我这fluttered里就采坑了,导致自动安装了其他的证书,导致生产证书# Xcode Signing cios14.4.1更新了什么ertificate is invalidiOS when build on ext de测试你适合学心理学吗vice 只好到钥匙串中删除,刚刚自动按钮的证书,退出Xcode,重新打开就可以了。
配置ios下载profile描述文件,需要为debug和release两种环境分别配置描述文件。选择3.6章节里创建的对应的描述文件,debug对应development, release对应DistributiOSion。
provisonint Profile 文件选择,开发对应着开发,生产对测试应着生产。
此处可能会有个小坑,google中国与钥匙串安装的cer 不对应,Buuld Setting测试用例s 重新选择一下就可以了
调试 一ios下载个是模拟器调试 一个真机调试(数据线连上苹果手机)
6.App Connnect 注册APP
套装ID 就是申请的indentifiers,选择
填写App资料,需macos系统要注意几点:
APP图标时,ios启动器图标中不能包含alpha通道或者透明度;Lancflutter读音hImage的图片格式只能是png格式,jpg格式Xcode无法加载成功;填写联系人的时候,需要加区号,比如中国 需要+86;App预览与截测试你的自卑程度屏图片,需要6.5英寸和5.5英寸就行,UI设计图的时候:5.5英寸 1242 2208 ; 6.5英寸 12ios下载4macOS2macoscatalina 2688
7.多人协作开发证书管理
(1)多台Mac运行相同iOS项目。
是与生成csr的mac电脑绑定的,其他的Mac 电脑无法安装,这样其他的MGoogleac电脑就无法真机测试打包这个iOSgoogle空间项目了。
但是,我们可以在钥匙串中导出.p12文件给其他的Mac安装,安装后这台Mac也具有同样打包测试发布能了。
开发需要导入developer证书,发布需要导出Distribution证书。
选择对应的证书,导出
最好重新命名方便识别。
.p12文件其实就加密的.cer证书。可以copy给其他Mac安装。
第二台Mac安装.p1flutter菜鸟教程2后,进行第四章的XCode配置后即可具有开发、测试、发布iOS的能力
(2)多人多台Mac开发相同ios项目 如果不方便把开发者账号和密码给其他人用,需要把对应开发人员加入到 开发flutter语音唤醒者成员中。
随后新用户会收到一封邀请邮件,同意后即会加入开发者计划中。新用户登陆苹果开发者中心,会看到自己加ios鲁多多app入的team
新用户用刚刚导出piOS12文件在Xcode上配置就可以协同开发ios项目。
8.APP打包上架
(1)打包并上传IPA包 首先确保证书正确、profile描述文件正确。
需要注意的是build构建号 每次都是唯一的,version为版本号,多个版本号可以属于同一个version,
flutter项目也可以直接 改pubspec.yaml文件 version字段 如:1.0.0+1
设备选择:
fluttegoogleplayr项目需要注意fluttering:需要执行 flutter build ios –release –no-codesign,需要注意的是是在flutter外层目录路径下执行,而不是ios目录路径,(我习惯在vscode中跑命令)
Product -> Archive:
直接Distribute App (如果不放心可以先Validate App)
进入Select a method of distribution(打包方式选择)界面:
App Store:App Store上架包用
Ad hoc:发布测试包用,如蒲公英发布
Enterprise:企业包用
Developmentflutter读音:开发包用
根据自己的证书和描述文件选择,在这里选择App Store,点击Next
Select a destination : 选择是直接上传还是导出,直接上传就可以
Select certificate and iOS App Store profile: 之前创建的描述macos10136怎么升级文件
然后等待上传
上传成功之后,需要进入 App Store ConnFlutterect, 看到
填写完整的信息,提交审核。
其他(持续补充……)
隐私合规需要注意,上一篇安卓上架已经详细说过 参考:juejin.cn/post/704849…
配置证书的过程中有时候用Xcode打开项目会崩溃,参考:juejin.cn/post/703564…
上架之后App Store还搜索不到APP如google何下载体验
如果已经上架,但是App Store还搜索不到APP,刚刚通过的需要等测试你适合学心理学吗24小时,可以去 七麦数据 查看 www.qimai.cn/rank/releas…
flutter项目,上架的介绍图,如果没google商店有UI提供,而是直macos是什么意思接截图,需要测试你的自卑程度注意需要去掉右上角flutter读音的DEBUG图标 在main.dart页面,Materiaios模拟器lApp中,增加 debugShowCheckedModeBanner: false, 即可。
参考文献:
1.flutter中文网-发布的IOS版APP flutterchina.club/ios-release…
2.iOS开发,从证书配置google翻译到上架ios模拟器发布 www.jianshu.com/p/815cba9e7…
3.iOS AppStore上架流程图文详解 www.jianshu.com/p/b8d8d1d14…
4.futtios模拟器er打包ios应用流程详解 www.jianshu.com/p/beeab8dmacos系统38…
5.配置 Associated Domainflutter翻译s www.jianshu.com/p/bebca03dc…flutter菜鸟教程