如题所述
ããåºç¨åå¸æ¦æ¬èµ·æ¥éè¦ä»¥ä¸å 个æµç¨ï¼
ãã1ã 注åApp IDï¼å¨Xcodeä¸æå®Bundle Identifier
ãã2. å建åå¸è¯ä¹¦ï¼Distribution Certificateï¼
ãã3. å建Distribution Provisioning Profile
ãã4. ç¨Distribution Profile为åºç¨ç¾å
ãã5. æå App6. å¨iTunes Connectä¸ä¼ App以ä¸å¤§é¨åçæä½æ¯å¨Provisioning PortalãXCodeãKeychain Accesså·¥å ·åiTunes Connectä¸å®æçã
ããä¸ä¼ Appå¿ é¡»å¨Xcode软件éæ§è¡ï¼ä¹å°±æ¯è¦æMacAir, MacMiniçè¿è¡Moc OS X Mountainç10.xçç³»ç»ï¼æ好æ¯10.7çææ°ççãXCodeè¿ä¸ªObject Cçéæå¼åç¯å¢ç®åçæ¬æ¯4.3.2ãå ¶ä»æä½é½å¯ä»¥å¨æ®éæµè§å¨éå®æãåå¸iOSåºç¨ç¨åºå°App Store - å建App IDé¦å ç»iOSåºç¨ç¨åºç³è¯·ä¸ä¸ªApp IDï¼å®æ¯ä½ çåºç¨ç¨åºçå¯ä¸æ è¯ã
ããç»å½iOS Developerç½ç«ï¼ç¹å»å³ä¾§çiOS Provisioning Portalé¾æ¥ï¼éæ©App IDãéæ©å建æ°app IDãå¨Descriptionä¸è¾å ¥åºç¨çæè¿°ä¿¡æ¯ã
ããBundle Identifieræ¯æåºç¨ç代ç æ è¯ï¼ä½ å¯ä»¥ç¨å ¬å¸å.åºç¨åæ¥æ è¯ï¼ä¾å¦ï¼com.company.demoappãç¶åæå¼X-Codeï¼éæ©Target > Summaryãå¨Identifierè¾å ¥æ¡ä¸è¾å ¥ä¸é¢æ³¨åçBundle Identifierã
ããåå¸iOSåºç¨ç¨åºå°App Store - å建Distribution CertificateiOSåºç¨é½æä¸ä¸ªå®å ¨è¯ä¹¦ç¨äºéªè¯å¼åè 身份åç¾åãå¨Provisioning PortalçDistributionæ ç®ä¸æ详ç»ä»ç»ï¼
ããä½æ»ä½å¯ä»¥å½çº³ä¸ºä»¥ä¸æ¥éª¤ã
ãã1ãæå¼Keychain Accessï¼å¨Preferencesä¸å ³éOCSPåCRLã
ãã2. ç¹å»Keychain Accessèåï¼éæ©Certificate Assistant > Request Certificate from Authorityã
ãã3. è¾å ¥Emailå°åï¼éæ©Saved to DiskåLet me specify key pair informationãç¹å»Continue继ç»ã
ãã4. éæ©key size of 2048 bitsåRSA algorithmï¼ç¹å»Continue继ç»ã
ãã5. ç¶åä¼å¨æ¡é¢ä¸çæä¸ä¸ª.CSRçæ件ã
ãã6. ç¶åè¿å ¥Provisioning Portalï¼éæ©Certificates -> Distribution -> Add Certificateï¼æ·»å åæå建ç.CSRç¾åæ件ã
ãã7. å¨çå¾ å®¡æ ¸çæ¶åä¸è½½å¹¶å®è£ WWDR intermediate certificateã
ãã8. å·æ°é¡µé¢ï¼ç¶åå°±å¯ä»¥ä¸è½½è¯ä¹¦äºãä¸è½½åå®è£ ã
ãã9. æåä¸æ¥ï¼æå¼Keychain Accessãéä¸åæå®è£ çprivate keyï¼éæ©èåä¸çExport Itemå°ç§é¥å¯¼åºã
ããå°å¯¼åºçç§é¥å¤ä»½å°ä¸ä¸ªå®å ¨çå°æ¹ï¼ä»¥ä¾¿ä»¥åéè£ äºç³»ç»å¯ä»¥è¿åãåå¸iOSåºç¨ç¨åºå°App Store - å建Distribution Provisioning Profileæå¼Provisioning Portalï¼éæ©Provisioning -> Distributionï¼éæ©æ·»å ä¸ä¸ªæ°çprofileãDistribution Methodè¦éæ©App Storeï¼App IDéè¦è¾å ¥å¨åé¢ç³è¯·çApp IDã
ããæ交åéè¦çä¸ä¼å¿åå·æ°è¿ä¸ªé¡µé¢ã
ããç¶åå°±å¯ä»¥ä¸è½½åå®è£ profileäºãå®è£ åprofileä¼è¢«æ·»å å°XCodeã
ããåå¸iOSåºç¨ç¨åºå°App Store - æ£æ¥ç¾ååçæ设置æå¼XCodeï¼å¨Build Settingsä¸éæ©Code Signingãå¨Release设置ä¸éæ©åæç³è¯·çDistribution Profileã
预先准备
在你开始将程序提交到AppStore之前,你需要有一个AppID,一个有效的发布证书,以及一个有效的Provisioningprofile。下面来看看它们各自的作用。
Step1:AppID(应用ID)
AppID是识别不同应用程序的唯一标示符。每个app都需要一个AppID或者app标识。目前有两种类型的App标识:一个是精确的AppID(explicitAppID),一个是通配符AppID(wildcardAppID)。使用通配符的AppID可以用来构建和安装多个程序。尽管通配符AppID非常方便,但是一个精确的AppID也是需要的,尤其是当App使用iCloud或者使用其他iOS功能的时候,比如GameCenter、PushNotifications或者IAP。
如果你不确定什么样的AppID适合你的项目,我推荐你读下苹果关于这一主题的文档: TechnicalNoteQA1713。
Step2:DistributionCertificate(发布证书)iOS应用都有一个安全证书用于验证开发者身份和签名。为了可以向AppStore提交app,你需要创建一个iOSprovisioningprofile。首先需要创建一个distributioncertificate(发布证书),过程类似于创建一个developmentcertificate(开发证书)。如果你已经在实体设备上测试你的App,那么你对创建developmentcertificate就已经很熟悉了。
如果对此不熟悉,建议你读下苹果关于signingcertificates和provisioningprofiles的详细指导。
Step3:ProvisioningProfile(配置文件)一旦你创建了AppID和distributioncertificate,你可以创建一个iOSprovisioningprofile以方便在AppStore中销售你的App。不过,你不能使用和adhocdistribution相同的provisioningprofile。你需要为AppStore分销创建一个单独的provisioningprofile,如果你使用通配符AppID,那么你的多个app就可以使用相同的provisioningprofile。
Step4:BuildSettings(生成设置)
配置AppID、distributioncertificate和provisioningprofile已经完成,是时候配置Xcode中target的buildsettings了。在Xcode Project Navigator的targets列表中选择一个target,打开顶部的BuildSettings选项,然后更新一下CodeSigning来跟之前创建的distributionprovisioningprofile相匹配。最近添加的provisioningprofiles有时候不会立马就在buildsettings的CodeSigning中看到,重启一下Xcode就可以解决这个问题。
/iknow-pic.cdn.bcebos.com/63d0f703918fa0ecac7c2e772a9759ee3d6ddb15"target="_blank"title="点击查看大图"class="ikqb_img_alink">/iknow-pic.cdn.bcebos.com/63d0f703918fa0ecac7c2e772a9759ee3d6ddb15?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto"esrc=""/>
配置Target的BuildSettings
Step5:DeploymentTarget(部署目标)
非常有必要说下deploymenttarget,Xcode中每个target都有一个deploymenttarget,它可以指出app可以运行的最小版本。不过,一旦应用在AppStore中生效,再去修改deploymenttarget,你要考虑到一定后果。如果你在更新app的时候提高了deploymenttarget,但是已经购买应用的用户并没有遇到新的deploymenttarget,那么应用就不能在用户的移动设备上运行。如果用户通过iTunes(不是设备)下载了一个更新过的app,然后替代了设备上原先的版本,最后却发现新版本不能在设备上运行,这确实是个问题。
(1)当你决定提高现有app的deploymenttarget时,要在新版本的版本注释中进行说明。如果你提前告知用户,那么至少有一点,你已经尽力阻止问题的发生了。
(2)对于一款新app,我经常会把deploymenttarget设置为最近发布的系统版本。因为新iOS版本发布后,渗透率的增长速度是令人难以置信的。很多人认为提高deploymenttarget会失去大部分市场,这个说法并不准确,比如iOS6,iOS6发布后一个月,超过60%的设备已经进行了更新。但对Android而言,就是另外一回事了,Android用户并不会像iOS用户那样热衷于更新操作系统版本。
- 官方服务
- 官方网站官方网站
1、注册开发者账号
开发者账号分为三种,分别是个人开发者账号,公司开发者账号,和企业开发者账号。
2、创建APP ID、配置文件Profiles
创建APP ID,APP ID非常重要,上架流程就是用APP ID关联在一起的。
3、创建iOS发布证书
创建iOS发布证书,下载P12证书文件。
4、打包ipa
利用iOS证书打包ipa,可以使用HBuilder工具打包。
5、iTunes connect创建APP
进入iTunes connect,选择创建APP,输入应用名称、语言、套装ID等,创建APP。
6、上传ipa
APP uploader程序中,提交ipa文件。
7、填写APP信息提交审核
iTunes connect中在我的APP中填写APP的各项信息,提交审核,等待通过即可。
不过App Store审核向来很严格,如果上架被拒,其实还可以选择tf上架,同样是苹果官方的分发渠道,但审核会相对宽松一些
iOS APP打包上传到AppStore的最新步骤
因为CSDN经常上不来,所以转载该文章到简书来。
文章里面的图片有些比较旧了,和现在的iTunesConnect网站不太一样,不过不影响整个流程,注意一下就好。
转载自ThomasYB
一、前言:
作为一名iOS开发者,把辛辛苦苦开发出来的App上传到App Store是件必要的事。但是很多人还是不知道该怎么上传到App Store上
下面就来详细讲解一下具体流程步骤。
二、准备:
一个已付费的开发者账号(可分为):
账号类型分为个人(Individual)
公司(Company)
企业(Enterprise)
高校(University)四种类型
每年资费分别为99、99、$299、免费。
一个已经开发完成的项目。
三、检查:
安装的Xcode必须为正式版,beta版本的Xcode不能上传项目到App Store。
上传使用的 Mac 的 OS X系统必须也是正式版的,beta版本也不行。
请确认你安装的Xcode是从App Store或者是开发者网站下载的
因为非官方途径下载的Xcode可能带有XcodeGhost 病毒。如何检查?
1.png
四、生成发布证书
1.打开开发者中心网址:https://developer.apple.com
2.点击:Account
2.png
3.输入账号和密码登录
3.png
4.点击:Certificates, Identifiers & Profiles
专门生成证书,绑定Bundle Id,绑定device设备,生成描述文件的地方
4.png
5.点击Certificates生成证书
选择iOS, tvOS, watchOS
选择All
点击右上角新添加证书
5.png
6.选择生产证书(选择App Store and Ad Hoc)
6.png
1 注意:一个开发者账号只能创建(1-2个开发(测试)证书,2-3个生产(发布)证书),如果你的App Store Ad Hoc 前面的按钮不能选择,则代表你的这个账号无法再创建新的生产证书了。2 解决方法:
3 从共同使用这个账号的人电脑上生成.p12文件,导入自己的电脑。(尽量不要执行下面第2步)
4 如果你想生成的话,把现有的删除一个(建议删除时间比较靠前的)。注意:如果删除一个证书,那么正在使用这个证书的人将不能再使用了,除非重新生成,然后利用.p12重新导入自己的电脑里!
5 注意:如果你想删除证书,执行下面步骤,否则略过。
7.png
8.png
9.png
10.png
7.上传CSR文件去获取证书(CSR文件需要我们到本机钥匙串里去创建)
在Launchpad的其他里面,点击钥匙串访问弹出如下界面
11.png
12.png
工具栏选择钥匙串访问->证书助理->从证书颁发机构请求证书...
13.png
14.png
将CSR文件保存到MAC磁盘的某个位置(这里我选择的是桌面,进行存储)
15.png
16.png
17.png
然后回到浏览器,点击choose File..
18.png
选择创建好的:CertificateSigningRequest.certSigningRequest 文件,点击选取
19.png
点击Generate上传证书
20.png
跳转到如下界面,点击 DownLoad 下载生成的证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中。
21.png
22.png
1 注意:2 这个证书只能下载一次。点击下载后,关闭页面后就不能再回到下载页面了。
3 如果不需要给别的电脑使用,则直接跳过下面附加项,跳转到第五步(绑定Bundle Identifier)
附加项:生成p12文件在其他电脑上使用这个发布证书
双击安装证书后,打开钥匙串访问,选择安装的证书右键单击
23.png
1 注意:如果没有导出,可以把这个证书删除,然后重新双击下载的证书文件安装。导出证书
24.png
存储证书
25.png
1 注意:存储的文件格式一定要是.p12设置密码
可为证书设置密码,也可不设置密码;如果设置了密码,那么别人安装这个证书的时候就要输入密码,否则无法安装。
26.png
27.png
五、创建App IDs和绑定你的App的Bundle Identifier
https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action
28.png
29.png
1 注意:2 上传App使用的Bundle Identifier,不能使用占位符。
3 如果你的Bundle Identifier已经在网站上绑定了,如果你又修改了你工程里面这个Bundle Identifier的话,需要重新进入到开发者账号里面绑定。
30.png
选择App中包含的服务,默认有两项
31.png
32.png
33.png
34.png
六、生成描述文件
找到Provisioning Profiles ,点击All,然后点击右上角 + 号
35.png
选择下面App Store这个描述文件,点击Continue
36.png
37.png
38.png
39.png
40.png
41.png
七、在App Store开辟空间
回到Member Center,点击iTunes Connect
42.png
43.png
44.png
45.png
46.png
1 注意:如果都填好以后,可能会告诉你,你的App名称已经被占用,那你只能改名了!47.png
48.png
49.png
50.png
51.png
52.png
53.png
54.png
55.png
八、在Xcode中打包工程
找到你刚刚下载的发布证书(后缀为.cer)或者p12文件,和PP文件,双击,看起来没反应,但是他们已经加入到你的钥匙串中。
在Xcode中选择iOS Device(这里不能选择模拟器),按照下图提示操作
56.png
57.png
58.png
1 注意:如果这里没有黄色叹号,代表你的配置没问题,如果有,那就是证书和描述文件不匹配,或者描述文件里刚才选的Bundle和现在的工程的Bundle Identifier不一致,去develop.apple.com 上找到你的描述文件在确认下绑定的bundle Identifier和你工程是不是一样的?59.png
60.png
61.png
62.png
63.png
64.png
65.png
66.png
67.png
68.png
69.png
70.png
71.png
72.png
73.png
74.png
75.png
76.png
77.png
78.png
79.png
80.png
81.png
82.png
83.png
等待APP的审核...
八、补充
构建版本的方法有两种
一种是使用 Xcode(上面已经介绍了)
另一种就是使用一个叫 Application Loader 这个软件:
84.png
85.png
86.png
87.png
88.png
个人觉得还是这个工具好用!