iOS App上架流程

简介: iOS App上架流程

iOS App上架流程

一、[endif]准备:

一个已付费的开发者账号(账号类型分为个人(Individual)、公司(Company)、企业(Enterprise)、高校(University)四种类型,每年资费分别为$99、$99、$299、免费。)。

一个已经开发完成的项目。

二、[endif]生成发布证书

打开苹果开发者中心:https://developer.apple.com,点击:Account

苹果开发者中心

下面输入已付款过的Apple账号和密码登录(如果你的电脑已经保存了密码,会直接进入)

开发者登录账号

点击:Certificates,Identifiers & Profiles(专门生成证书,绑定Bundle Id,绑定device设备,生成描述文件的地方)

Member Center

点击Certificates生成证书

选择iOS, tvOS, watchOS

选择All

点击右上角新添加证书

添加新证书1  由于是做App上传,选择生产证书(选择App Store and Ad Hoc)

选择App Store and Ad Hoc

注意:一个开发者账号只能创建(1-2个开发(测试)证书,2-3个生产(发布)证书),如果你的App Store Ad Hoc前面的按钮不能选择,则代表你的这个账号无法再创建新的生产证书了。

解决方法:

1. 从共同使用这个账号的人电脑上生成.p12文件,导入自己的电脑。(尽量不要执行下面第2步)

2. 如果你想生成的话,把现有的删除一个(建议删除时间比较靠前的)。

注意:如果删除一个证书,那么正在使用这个证书的人将不能再使用了,除非重新生成,然后利用.p12重新导入自己的电脑里!

如果你想删除证书,执行下面步骤,否则略过。

删除证书

然后接上上图,生产证书部分继续

生成证书2

生成证书3

生成证书4

上传CSR文件去获取证书(CSR文件需要我们到本机钥匙串里去创建)

在Launchpad的其他里面,点击钥匙串访问弹出如下界面

其他

钥匙串访问

工具栏选择钥匙串访问->证书助理->从证书颁发机构请求证书...

请求证书

证书信息

将CSR文件保存到MAC磁盘的某个位置(这里我选择的是桌面,进行存储)

存储证书

点击完成

CertificateSigningRequest.certSigningRequest 文件

然后回到浏览器,点击Choose File...

选择CSR文件

选择创建好的:CertificateSigningRequest.certSigningRequest文件,点击选取

选取CSR文件

点击Generate上传证书

上传CSR证书

跳转到如下界面,点击DownLoad下载生成的证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中。

下载生成的证书

cer后缀的文件

注意:这个证书只能下载一次。点击下载后,关闭页面后就不能再回到下载页面了。

如果不需要给别的电脑使用,则直接跳过下面附加项,跳转到第五步(绑定Bundle Identifier)

附加项:生成p12文件在其他电脑上使用这个发布证书

双击安装证书后,打开钥匙串访问,选择安装的证书右键单击

安装的发布证书

注意:如果没有导出,可以把这个证书删除,然后重新双击下载的证书文件安装。

导出证书

导出证书

存储证书

存储导出的证书

注意:存储的文件格式一定要是.p12

设置密码

可以为证书设置密码,也可以不设置密码;如果设置了密码,那么别人安装这个证书的时候就要输入密码,否则无法安装。这里就不设置密码了。

设置密码

保存导出的证书

p12发布证书

如果需要在其它电脑上也能发布App,那么就必须要安装这个发布证书。

[if !supportLists]三、[endif]创建App IDs和绑定你的App的Bundle Identifier

回到刚才的页面:https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action

点击App IDs,进入如下界面,点击右上角的+

点击App IDs

填写App IDs和Bundle Identifier

填写App IDs和Bundle Identifier

注意:

[if !supportLists]1. [endif]上传App使用的Bundle Identifier(不要有-,都是英文+数字)必须是固定的,不能使用占位符。

[if !supportLists]2. [endif]如果你的Bundle Identifier已经在网站上绑定了,如果你又修改了你工程里面这个Bundle Identifier的话,需要重新进入到开发者账号里面绑定。

修改工程的Bundle Identifier

下面选择App中包含的服务,默认有两项,其余的根据自己项目的需求进行选择

App Services

点击Continue

点击continue

点击Register

点击Register

点击Done

点击Done

四、[endif]生成描述文件(描述文件的作用就是把证书和Bundle Identifier关联起来)

找到Provisioning Profiles,点击All,然后点击右上角+号

Provisioning Profiles

因为是发布,所以选择下面App Store这个描述文件,点击Continue

选择App Store

在App ID 这个选项栏里面找到你刚刚创建的:App IDs(Bundle Identifier) 类型的套装,点击Continue

选择发布项目的Bundle Identifier

选择你刚创建的发布证书(或者生成p12文件的那个发布证书),根据自己电脑上的发布证书日期来选择,点击Continue

选择创建的发布证书

在Profile Name栏里输入一个名字(这个是Provisioning Profiles文件的名字,可随便输入,在这里我用工程名字,便于分别),然后点击Generate

给描述文件起个名字

Download生成的PP文件,然后点击Done,双击安装(闪一下就完事了,没其它效果)

Download生成的PP文件

生成的描述文件

在App Store开辟空间

回到Member Center,点击iTunes Connect

点击iTunes Connect

登录开发者账号(还是之前已付费的账号)

Snip20160315_68.png

登录成功后,点击我的App

点击我的App

点击左上角那个+号,点击新建(注意:我们是iOS App开发,不要选Mac App啦)

新建App

依次按提示填入对应信息(SKU是公司用于做统计数据之类的id,根据公司需求填写),然后点击创建

填写App信息

注意:如果都填好以后,可能会告诉你,你的App名称已经被占用,那么不好意思,你只能改名了!(而且建议大家起名不要往比较出名的App上靠,否则审核可能会被拒绝)

填写App其它信息

App信息

填写价格和销售范围(由于我的开发者账号没有签订纳税合同,所以不能上线收费应用,所以只能暂时免费)

填写价格和销售范围

依次把不同尺寸的App截图拉入到对应的里面

需要填写不同尺寸的手机屏幕截图(也就是拿不同尺寸的模拟器运行后,挑出至少3页最多5页进行截图然后拖到响应的区里)(在模拟器Command+S就可以保存屏幕截图到桌面了)(注意:如果提示拖进去的图片尺寸不对,则把模拟器弄成100%然后再Command+S) 尺寸参照表在下面

设置不同尺寸的App截图

尺寸参照图

尺寸参照图

填写App简介

填写App简介

按提示依次输入

按提示依次输入

错误提示:如果上传App图标失败,提示Alpha错误的话,看下面。

打开你的图标图片,勾掉这个

勾掉这个

点击分级后面的编辑,如实填写后,点击完成

分级信息

填写审核信息

填写审核信息

版本发布就是:(然后最下面选择自动发布的话就是如果审核通过,就自动上传到App Store供人下载)

此时这个构建版本还没有生成,我们先把基本信息填写完毕,然后再进入Xcode中把项目打包发送到过来。

注意:填写完一定要点击右上角的保存。

[if !supportLists]五、[endif]在Xcode中打包工程

找到你刚刚下载的发布证书(后缀为.cer)或者p12文件,和Provisioning Profiles文件,双击,看起来没反应,但是他们已经加入到你的钥匙串中。

在Xcode中选择iOS Device(这里不能选择模拟器),按照下图提示操作

选择iOS Device

如果你的应用不支持横屏,把这两个勾去掉

如果你的应用不支持横屏,把这两个勾去掉

查看版本号和构建版本号

查看版本号和构建版本号

配置发布证书(ps:截图时选择的证书是错误的,大家注意一下,要选择发布证书)

配置发布证书

注意:如果这里没有黄色叹号,代表你的配置没问题,如果有,那就是证书和描述文件不匹配,或者描述文件里刚才选的Bundle和现在的工程的Bundle Identifier不一致,去https://develop.apple.com上找到你的描述文件在确认下绑定的Bundle Identifier和你工程是不是一样的?

检查

断点全局断点僵尸模式等都要去掉。

去掉断点、全局断点

Snip20160315_36.png

Snip20160315_37.png

去掉僵尸模式

6.设置Release模式(Debug是测试的,Release是发布用的)

Snip20160315_39.png

Snip20160315_40.png

Snip20160315_41.png

Snip20160315_42.png

7.选择Xcode下Product下Archive(专门用于传项目,或者打包项目)

选择Archive

8.出现下图说明你没有添加开发者账号,点击右下脚Add...按钮就可以添加

没有添加开发者账号

9.输入付费的开发者账号

输入开发者账号

可能会弹出下面这个界面,如果不弹出,按Command加。

10.然后回到Archive(选择已付费的账号),然后点击Choose

选择已付费的账号

然后等待

等待

11.选择Upload提交

Upload提交

12.如下就代表上传成功,如果出错,请参照iOS App上传项目遇到的问题

上传成功

13.返回Itunes Connect网站上你自己的App信息中查看一下

在App信息中查看

14.在这个构建版本这里就可以添加代码

添加代码

点击+号之后选择代码版本

添加构建版本

15.提交以供审核

提交以供审核

16.App已经从准备提交,变成正在等待审核状态

正在等待审核状态

17.等待苹果的审核...

[if !supportLists]六、[endif]补充

[if !supportLists]1. [endif]构建版本的方法有两种,一种是使用Xcode(上面已经介绍了),另一种就是使用一个叫Application Loader这个软件:

Application Loader

使用Xcode构建版本:

上面已经介绍(已经Archive的话,可以在Xcode: Window -> Organizer进入)

Upload to App Store…

使用Application Loader构建版本:

如上图,点击Export...,导出一个ipa文件(ps:为了保险起见、让苹果审核顺利一点,这里可以先点击Validate...来验证一下,这里就懒得验证了)

Application Loader下载Xcode的时候就已经下载了(没有的请自行下载),Xcode右键弹出下面界面

Open Developer Tool

打开Application Loader(如果没有登录,会提示你登录你的开发者账号)

 

Application Loader

选取你导出的ipa文件(或者双击“交付您的应用程序”选取ipa文件),之后按提示操作就行,上传完毕没有报错的话,过几分钟左右就可以在ITunes Connect里面就可以看到你上传的这个版本了。

相关文章
|
14天前
|
监控 安全 开发者
山东布谷科技:关于直播源码|语音源码|一对一直播源码提交App Store的流程及重构经验
分享提交直播源码,一对一直播源码,语音源码到Appstore的重构经验!
|
1月前
|
安全 开发者 UED
APP上架到应用商店需要哪些流程?
APP上架是一个涉及多个步骤和准备工作的过程,主要包括准备上架资料和遵循上架流程两个方面。
80 1
|
3月前
|
编解码 iOS开发
IOS上架APP Store时预览图尺寸
IOS上架APP Store时预览图尺寸
596 3
|
3月前
|
iOS开发
App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法
App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法
184 0
App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法
|
3月前
|
开发工具 iOS开发
解决Flutter运行报错Could not run build/ios/iphoneos/Runner.app
解决Flutter运行报错Could not run build/ios/iphoneos/Runner.app
138 2
|
3月前
|
Android开发 iOS开发 C#
Xamarin:用C#打造跨平台移动应用的终极利器——从零开始构建你的第一个iOS与Android通用App,体验前所未有的高效与便捷开发之旅
【8月更文挑战第31天】Xamarin 是一个强大的框架,允许开发者使用单一的 C# 代码库构建高性能的原生移动应用,支持 iOS、Android 和 Windows 平台。作为微软的一部分,Xamarin 充分利用了 .NET 框架的强大功能,提供了丰富的 API 和工具集,简化了跨平台移动应用开发。本文通过一个简单的示例应用介绍了如何使用 Xamarin.Forms 快速创建跨平台应用,包括设置开发环境、定义用户界面和实现按钮点击事件处理逻辑。这个示例展示了 Xamarin.Forms 的基本功能,帮助开发者提高开发效率并实现一致的用户体验。
149 0
|
3月前
|
图形学 数据安全/隐私保护 iOS开发
Unity与IOS⭐Xcode打包,上架TestFlight的完整教程
Unity与IOS⭐Xcode打包,上架TestFlight的完整教程
|
3月前
|
iOS开发
解决IOS上架App Store后显示语言为英文的问题
解决IOS上架App Store后显示语言为英文的问题
84 0
|
1月前
|
Java Android开发 Swift
安卓与iOS开发对比:平台选择对项目成功的影响
【10月更文挑战第4天】在移动应用开发的世界中,选择合适的平台是至关重要的。本文将深入探讨安卓和iOS两大主流平台的开发环境、用户基础、市场份额和开发成本等方面的差异,并分析这些差异如何影响项目的最终成果。通过比较这两个平台的优势与挑战,开发者可以更好地决定哪个平台更适合他们的项目需求。
109 1
|
4天前
|
安全 数据处理 Swift
深入探索iOS开发中的Swift语言特性
本文旨在为开发者提供对Swift语言在iOS平台开发的深度理解,涵盖从基础语法到高级特性的全面分析。通过具体案例和代码示例,揭示Swift如何简化编程过程、提高代码效率,并促进iOS应用的创新。文章不仅适合初学者作为入门指南,也适合有经验的开发者深化对Swift语言的认识。
19 9