今天给大家带来项目如何上架的教程
准备:
1. 一个开发者账号(需要交过钱的,好黑)
2. 一个做完的项目
检查:
1. 你的Xcode必须是正式版,不可以是beta版本(不能上传项目)
2. 请确认你的Xcode是从App Store或者从开发者网站下的Xcode安装,而不是非法获取的安装包,因为可能有Ghost。如何检查?
![](http://img.e-com-net.com/image/info10/6f8c102946884762b8ccce08157d5815.jpg)
开始吧。
一。生成发布证书(证书的作用:类似于驾照,证明你的身份可以进行开发者一些操作)
打开https://developer.apple.com点击右上角开发者中心
![](http://img.e-com-net.com/image/info10/0c3f4161f99e4bf78ce06a1b607b0f51.jpg)
这里输入你付款过的Apple 帐号和密码
![](http://img.e-com-net.com/image/info10/14a9b67f4e3b419aae6d4c2ac9ca941f.jpg)
下面点击Certificates,Identifiers&Profiles 这个选项 (进去是专门生成证书,绑定Bundle Id,绑定device设备,生成描述文件的地方)
这里我们选择Certificates,
![](http://img.e-com-net.com/image/info10/3bd6f5a93eab4e759a441a4fa53889c3.jpg)
然后我们在1对应的位置选择iOS App(因为我们要上传的是iOS项目)然后 点击右上角新添加证书
![](http://img.e-com-net.com/image/info10/63a40969bc884caca9211d443190971e.jpg)
由于我们要做项目上传,选择生产证书(选择App store那个)
![](http://img.e-com-net.com/image/info10/1bfec0dbedb743deb7945dc228342583.jpg)
注意:一个开发者账号只能创建(1-2个开发(测试)证书),2-3个生产(发布)证书),所以如果你App Store Ad Hoc这个位置前面按钮不能选择,则代表你的这个账号无法再创建新的生产证书了
1.请从别人那里要这个p12文件,尽量不要执行下面第2步
2.如果你想生成的话,把现有的删除一个(建议删除时间比较靠前的)注意:如果删除了一个证书,那么正在使用这个证书的人将不能再使用了,除非重新生成,然后利用.p12重新导入自己电脑里!
注意:如果你想要删除证书,执行这步骤,否则掠过
![](http://img.e-com-net.com/image/info10/af909dc4c79543a9adebee59d83d21bd.jpg)
然后接着上上张图,生产证书那部继续
![](http://img.e-com-net.com/image/info10/99cc6bba79eb4747a15f087575b68505.jpg)
![](http://img.e-com-net.com/image/info10/5f70bcb8e3bc4d8ab06b559b4ce1307b.jpg)
![](http://img.e-com-net.com/image/info10/f96e59cf683f4844a2b909977efea072.jpg)
这个时候,我们需要上传CSR文件去获取证书,CSR文件需要我们到本机钥匙串里去创建
![](http://img.e-com-net.com/image/info10/d8c0fa0a4d4042b1bc61e11bfcc4d584.jpg)
在其他里面,点击 钥匙串访问 然后弹出如下界面
![](http://img.e-com-net.com/image/info10/ec18f1bc9cd140f4a3a13edd4fc505fa.jpg)
![](http://img.e-com-net.com/image/info10/b05a50a18ee842debcc8fd5efff1e862.jpg)
![](http://img.e-com-net.com/image/info10/fffa5b3939314e77b116356a0b43ae6c.jpg)
然后把CSR文件保存到计算机磁盘的某个位置,我这里选择了桌面,进行存储
![](http://img.e-com-net.com/image/info10/1fcc09e6a46544ce895015975f1b9c9d.jpg)
然后回到网页上,选择CSR文件上传
![](http://img.e-com-net.com/image/info10/b4ae3988107447f9bb6557e544c21f8c.jpg)
找到刚才保存到桌面的CSR文件,然后点击打开
![](http://img.e-com-net.com/image/info10/59321bfd5a774d4f814d79ac2cc35001.jpg)
![](http://img.e-com-net.com/image/info10/3c774710d4344c24948744bea1fe1182.jpg)
然后跳转到如下界面,点击DownLoad 下载生成的证书
![](http://img.e-com-net.com/image/info10/c0ce2aadd8a645fba38ecb5637e6367a.jpg)
注意:这个证书只能下载一次。点击下载后。如果想给别的电脑用。请继续往下看(需要导出成.p12格式文件到别到电脑上运行)
如果不想给别的电脑用,则直接跳转到2,绑定Bundle ID
生成p12文件在别的电脑使用这个发布证书,请看这里
安装证书后,打开钥匙串访问,然后
![](http://img.e-com-net.com/image/info10/5a1fa7dc779741cf94154c88bf3d5090.jpg)
然后右键
注意(如果没有导出,可以把这个证书删除,然后重新双击下载的证书文件)
![](http://img.e-com-net.com/image/info10/61bb38b0d3184016a90ecce88dd746e4.jpg)
![](http://img.e-com-net.com/image/info10/c0849992b33d4eb3bab906dee011e585.jpg)
然后(可以设置密码,也可以不设置密码,如果设置密码了,别人双击打开你给的p12文件的话就需要输入密码)这里直接不设置密码,继续
![](http://img.e-com-net.com/image/info10/4ac528031f9d4901ac8f4b204c6b8146.jpg)
然后我刚才是保存在桌面的,那么出来了这个!在桌面
![](http://img.e-com-net.com/image/info10/a5e18d642fb34c718e8a1b68a43d66ae.jpg)
如果想在别的机器上 也能发布你的代码,则必须要安装这个发布证书。
2. 绑定你的App的Bundle Identifier (Bundle Identifier 是你的App的唯一标识,跟身份证一样)
回到刚才的网页上 (https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action)
![](http://img.e-com-net.com/image/info10/43fa9201b9044d8c8a74680382f2f4d9.jpg)
下面起一个名字,不能使用@,&,*,’,”。
![](http://img.e-com-net.com/image/info10/a0a78a900fa247f28f65dac1c572513d.jpg)
上传应用程序使用的Bundle ID必须是固定的,不能使用占位符
![](http://img.e-com-net.com/image/info10/70db6fc3f02b41abb30e1c7180de82f8.jpg)
打开工程找到你的Bundle Identifier (不要有-,都是英文+数字) (在Xcode7.0之后,直接在这个位置修改Bundle Identifier就可以,然后回车)
注意:如果你的Bundle Identifier已经在网站上绑定了,如果你修改了你工程里这个Bundle Identifier的话,需要重新去网页绑定
![](http://img.e-com-net.com/image/info10/c792a722d3454e48950ea269f89d4227.jpg)
![](http://img.e-com-net.com/image/info10/9740799ac6b644a9848bce14a2fd8448.jpg)
下面选择app中包含的服务,默认有两项,其余的根据自己的需求进行选择
![](http://img.e-com-net.com/image/info10/51343d011be94d618e5cecab93b7e6ab.jpg)
然后点击底部Done
![](http://img.e-com-net.com/image/info10/e39826d694034159a136c5604ba66b4e.jpg)
![](http://img.e-com-net.com/image/info10/74233f79997d46d4911eecb5ed16dbb7.jpg)
![](http://img.e-com-net.com/image/info10/c9e47a7180524896a6eb757ba661d855.jpg)
3. 生成描述文件 (描述文件的作用是把证书和Bundle Identifier关联起来)
![](http://img.e-com-net.com/image/info10/b00e9ff82464486e835ea266e699780f.jpg)
因为我们是要发布,所以选择下面发布的描述文件
![](http://img.e-com-net.com/image/info10/f625df43f479451bb27277699735d8d4.jpg)
然后选择我们要发布的项目的Bundle Identifier
![](http://img.e-com-net.com/image/info10/fbefd042e92f4c8697071a3bac81eabd.jpg)
然后选择发布证书,根据自己电脑上的发布证书日期来选择
![](http://img.e-com-net.com/image/info10/d6a0db27f63e4522b0f9110fd63ae3d8.jpg)
然后给描述文件起个名字。
![](http://img.e-com-net.com/image/info10/461328030cec4a9bbed2cd8b05e451eb.jpg)
然后下载描述文件,双击安装(闪一下就完事了,没有其他效果)
![](http://img.e-com-net.com/image/info10/395101b929b4473aa6d74dbc770ea6a4.jpg)
4. 描述文件下载后。我们网页的旅程还没结束。需要去这个网站 占坑(也就是注册你的应用名字, 如果你已经在itunesConnect网址注册好了你的应用,则忽略4)。
itunesconnect.apple.com
然后还是支付过钱的那个开发者账号才能登陆。
![](http://img.e-com-net.com/image/info10/d51ed885ec384843800c4488c2a5746c.jpg)
登录成功后,我们点击 我的App
![](http://img.e-com-net.com/image/info10/e3856e2ccdfd4fcbad4d1ada71d19571.jpg)
然后点击左上角那个+号,创建我们的应用
![](http://img.e-com-net.com/image/info10/ad4e70dabae7452aa064b459318c09d0.jpg)
然后点击新建App (注意 我们是iOS App开发,不要选Mac App啦)
SKU公司用于做统计数据之类的id,根据公司需求填写
![](http://img.e-com-net.com/image/info10/e9d2fda5dca648d6a9094ae7ba14162b.jpg)
如果都填写好以后,可能会告诉你,你的App名字已经被占用,那么不好意思,你只能改名了!(而且推荐大家的名字不要往比较出名的App上靠)否则审核可能会被拒绝。
![](http://img.e-com-net.com/image/info10/688b84c5f7dd47169f080352b75182b6.jpg)
下面我们的开发者账号没有签订纳税合同,所以不能上线收费应用,所以只能暂时免费
![](http://img.e-com-net.com/image/info10/2f20fbbba1c1463ea6becb7676950a70.jpg)
然后右面这底下 需要填写不同尺寸的手机屏幕截图(也就是拿不同尺寸的模拟器运行后,挑出至少3页最多5页进行截图然后拖到响应的区里)(在模拟器Command+S 就可以保存屏幕截图到桌面了)(注意:如果提示拖进去的图片尺寸不对,则把模拟器弄成100%然后再Command 加 S) 尺寸参照表在下面
![](http://img.e-com-net.com/image/info10/490d8ad8ee034e218c1e27272dc85e35.jpg)
尺寸参照
![](http://img.e-com-net.com/image/info10/8af74b4f6411436882675199bbf41fa0.jpg)
![](http://img.e-com-net.com/image/info10/ab1aefcdc85943549dd692f2fb9edb7d.jpg)
![](http://img.e-com-net.com/image/info10/8093586efde648c0bb16599d32d804d5.jpg)
错误提示:如果上传App 图标失败,提示alpha错误的话看下面。
打开你的图标图片,勾掉这个就可以了。
![](http://img.e-com-net.com/image/info10/a809085c3750414a86d9c40f5640eca6.jpg)
点击分级后面的编辑跳入
如实填写后点击完成
![](http://img.e-com-net.com/image/info10/d6727c633d1f41a5a45c83c52de53646.jpg)
![](http://img.e-com-net.com/image/info10/aa431e62f9f04399a22885756bd05839.jpg)
版本发布就是:(然后最下面选择自动发布的话就是如果审核通过,就自动上传到App Store供人下载)
5. 配置Xcode自己的工程
打开你项目工程 第一步,这里不能选择模拟器,选择iOS Device
![](http://img.e-com-net.com/image/info10/7ef3f31e0226482f8d23eea9b5897c61.jpg)
如果不支持横屏,把这2个勾去掉
![](http://img.e-com-net.com/image/info10/928940d8ff774607b326114f937de47d.jpg)
然后查看版本号和构建版本号
![](http://img.e-com-net.com/image/info10/65f49acc41414b529347fbd5b62b83c7.jpg)
然后配置发布证书
![](http://img.e-com-net.com/image/info10/2eb05b7d35d142ce88ea8d10c9702d54.jpg)
然后,如果这里没有黄色叹号,代表你的配置没问题,如果有,那就是证书和描述文件不匹配,或者描述文件里刚才选的Bundle和现在的工程的Bundle Identifier不一致,去develop.apple.com 上找到你的描述文件在确认下绑定的bundle Identifier和你工程是不是一样的?
![](http://img.e-com-net.com/image/info10/cd9b8075c29c4a559797982a5f607731.jpg)
然后继续。断点,全局断点,僵尸模式等都要去掉。
![](http://img.e-com-net.com/image/info10/c43d48d7596a49d997f37aa4f12282bd.jpg)
![](http://img.e-com-net.com/image/info10/97dd77eb2b094bb19ed16c755a14fe7e.jpg)
![](http://img.e-com-net.com/image/info10/7d1c13d1be934759bac6704aab111c07.jpg)
![](http://img.e-com-net.com/image/info10/8b1db0b15f3040fa9fbacc888f0fc590.jpg)
然后设置Release模式(Debug是测试的,Release是发布用的)
![](http://img.e-com-net.com/image/info10/f57821bc73ff478e9d6162fb0c8cd843.jpg)
![](http://img.e-com-net.com/image/info10/b5e111d529b046a7928323632ea145ca.jpg)
![](http://img.e-com-net.com/image/info10/3d7deabf052e476188c91abbca43b402.jpg)
![](http://img.e-com-net.com/image/info10/06977d873c164ff9a26b122c054fa7c1.jpg)
在Xcode7.x 时, 出现了一个新的东西叫做bitcode, (官网说, 可以优化我们的二进制文件, 方便以后更新, 但是旧的一些第三方SDK或者frameWork不支持这个bitcode, 可能导致你上传代码失败. 看解决办法:
1. 去找这些第三方SDK或者frameWork要支持bitcode的版本(不太可能实现)
2. 让工程不支持bitcode, 如何设置呢. 看下图
![](http://img.e-com-net.com/image/info10/a4a838963dbb45ebad532aa90caf50ce.jpg)
然后可以根据需要设置本地语言和App在手机中显示的名字
![](http://img.e-com-net.com/image/info10/48b2125bc3a14576a21de5361bac743a.jpg)
然后选择 Xcode下 Product 下 Archive(专门用于传项目,或者打包项目)
![](http://img.e-com-net.com/image/info10/60aa44e6df4b49af91bbd3bc7c8d5fe6.jpg)
![](http://img.e-com-net.com/image/info10/ec32c3f9a00f423d8684ab3ae6f5ea24.jpg)
![](http://img.e-com-net.com/image/info10/c13ca515d21d4f2d9f4ddc917163691a.jpg)
出现下图说明你没有添加开发者账号,点击右下脚Add... 按钮就可以添加了
![](http://img.e-com-net.com/image/info10/3f9db451b9e3461fb0c6a1f0203f05b1.jpg)
输入那个花钱买的开发者账号
![](http://img.e-com-net.com/image/info10/827a70aceeba48cda6476fda0c439f2a.jpg)
然后可能会弹出这个界面,如果不弹出按command 加 ,
![](http://img.e-com-net.com/image/info10/b59ea14d5d974ddcbbbda85d22d002c1.jpg)
然后回到那个Archive(选择账号,就是我们交过钱的)然后点击Choose
![](http://img.e-com-net.com/image/info10/28a40ad19d514ec8be80ad3d537f4812.jpg)
然后等待
![](http://img.e-com-net.com/image/info10/731ffe09d3174d09985d5c2d4ff28220.jpg)
下面选择Upload 提交
![](http://img.e-com-net.com/image/info10/3532fd8eb11d4f0c9e9e7cfe8ec5b790.jpg)
如下就代表上传成功,如果出错了请参考:http://www.cnblogs.com/lidongxu/p/5143453.html
![](http://img.e-com-net.com/image/info10/3516986ec8274017bec39179e5be2cce.jpg)
然后回到Itunesconnect网站上你自己的App信息中查看一下
![](http://img.e-com-net.com/image/info10/5e5aaec5f1234517b6200da529f65b22.jpg)
然后这个构建版本这里就可以添加代码啦
![](http://img.e-com-net.com/image/info10/9b3b82d96f4341d68dc5fa34f077fc33.jpg)
点击+号之后选择代码版本
![](http://img.e-com-net.com/image/info10/1e5c752116424346a4ae4cd367997aa5.jpg)
然后所有东西都填写好了之后,点击页面右上角提交以供审核,然后你的应用就进入到排队等待审核的状态了(大概等1周多吧就能有结果,祝你好运)
![](http://img.e-com-net.com/image/info10/51996cbf514f404c9394562aef94179b.jpg)
然后我的App已经从准备提交,变成正在等待审核啦
作者:M_Lee
链接:https://www.jianshu.com/p/391f6102b4fb
來源:
著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。