一、准备:
一个已付费的开发者账号(可分为):
账号类型分为个人(Individual)$99
公司(Company)$99
企业(Enterprise)$299
一个已经开发完成的项目
二、检查:
安装的Xcode必须为正式版,beta版本的Xcode不能上传项目到App Store。
上传使用的 Mac 的 OS X系统必须也是正式版的,beta版本也不行。
请确认你安装的Xcode是从App Store或者是开发者网站下载的
因为非官方途径下载的Xcode可能带有XcodeGhost 病毒。
三、生成证书
1.打开开发者中心网址:https://developer.apple.com
2.点击:Account
3.输入账号和密码登录
4.点击:Certificates, Identifiers & Profiles
专门生成证书,绑定Bundle Id,绑定device设备,生成描述文件的地方
5.点击Certificates生成证书
选择iOS, tvOS, watchOS
选择All
点击右上角新添加证书
6.选择生产证书(选择App Store and Ad Hoc)
注意:一个开发者账号只能创建(1-2个开发(测试)证书,2-3个生产(发布)证书),如果你的AppStoreAdHoc前面的按钮不能选择,则代表你的这个账号无法再创建新的生产证书了。解决方法:从共同使用这个账号的人电脑上生成.p12文件,导入自己的电脑。(尽量不要执行下面第2步)如果你想生成的话,把现有的删除一个(建议删除时间比较靠前的)。注意:如果删除一个证书,那么正在使用这个证书的人将不能再使用了,除非重新生成,然后利用.p12重新导入自己的电脑里!注意:如果你想删除证书,执行下面步骤,否则略过。
7.上传CSR文件去获取证书(CSR文件需要我们到本机钥匙串里去创建)
在Launchpad的其他里面,点击钥匙串访问弹出如下界面
工具栏选择钥匙串访问->证书助理->从证书颁发机构请求证书...
将CSR文件保存到MAC磁盘的某个位置(这里我选择的是桌面,进行存储)
然后回到浏览器,点击choose File..
选择创建好的:CertificateSigningRequest.certSigningRequest 文件,点击选取
点击Generate上传证书
跳转到如下界面,点击 DownLoad 下载生成的证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中。
注意:
如果不需要给别的电脑使用,则直接跳过下面附加,跳转到第五步(绑定Bundle Identifier)
附加:生成p12文件在其他电脑上使用这个发布证书
双击安装证书后,打开钥匙串访问,选择安装的证书右键单击
注意:如果没有导出,可以把这个证书删除,然后重新双击下载的证书文件安装。
导出证书
存储证书
注意:存储的文件格式一定要是.p12
设置密码
可为证书设置密码,也可不设置密码;如果设置了密码,那么别人安装这个证书的时候就要输入密码,否则无法安装。
如果需要在其它电脑上也能发布App,那么就必须要安装这个发布证书。
四、创建App IDs和绑定你的App的Bundle Identifier
https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action
注意:
上传App使用的Bundle Identifier,不能使用占位符。
如果你的Bundle Identifier已经在网站上绑定了,如果你又修改了你工程里面这个Bundle Identifier的话,需要重新进入到开发者账号里面绑定。
选择App中包含的服务,默认有两项
五、生成描述文件
找到Provisioning Profiles ,点击All,然后点击右上角 + 号
选择下面App Store这个描述文件,点击Continue
六、在App Store开辟空间
回到Member Center,点击iTunes Connect
注意:如果都填好以后,可能会告诉你,你的App名称已经被占用,那你只能改名了!
七、在Xcode中打包工程
找到你刚刚下载的发布证书(后缀为.cer)或者p12文件,和PP文件,双击,看起来没反应,但是他们已经加入到你的钥匙串中。
在Xcode中选择iOS Device(这里不能选择模拟器),按照下图提示操作
注意:如果这里没有黄色叹号,代表你的配置没问题,如果有,那就是证书和描述文件不匹配,或者描述文件里刚才选的Bundle和现在的工程的BundleIdentifier不一致,去develop.apple.com上找到你的描述文件在确认下绑定的bundleIdentifier和你工程是不是一样的?
等待APP的审核...
八、补充
构建版本的方法有两种
一种是使用 Xcode(上面已经介绍了)
另一种就是使用一个叫 Application Loader 这个软件: