李洪强iOS开发之最全App上架流程
在上架App之前想要 真机测试的同学 请查看
iOS- 最全的真机测试教程 里面包含怎么让多台电脑同时 上架App和同时真机调试。P12文件的使用详解
准备
开发者账号
完工的项目
上架步骤
一、创建App ID
二、创建证书请求文件 (CSR文件)
三、创建发布证书 (CER)
四、创建Provisioning Profiles配置文件 (PP文件)
五、在App Store创建应用
六、打包上架
一、创建App ID
1.打开苹果开发者网,点击“Account”登录会员中心。
2.填写信息创建app ID
点击+创建ID
二、创建证书请求文件(CSR文件)
CRS文件主要用于 绑定你的电脑的
1 点开LaunchPad,在其他中找到打开钥匙串访问
2 点击电脑左上角的钥匙串访问–证书助理–从证书颁发机构请求证书
3 出现如下界面,选择存储到磁盘,点击继续
4 选择存储到桌面,存储
5 点击完成
6 在桌面上看到下面的文件,证书请求文件完成
三、创建发布证书 (CER文件)
1 找到Certificates ,点击All,然后点击右上角 + 号
2 点击App Store and Ad Hoc
发布证书和开发者证书需要分别创建,操作两次,开发者证书用于真机调试,发布证书用于提交到AppStore。
3. 点击Continue
4. 点击Continue
5. 点击choose File.. 选择创建好的证书请求文件:CertificateSigningRequest.certSigningRequest 文件,点击Generate
6. 点击Download下载创建好的发布证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中。
7. 双击安装。如果安装不上,可以直接将证书文件拖拽到钥匙串访问的列表中
重点: 一般一个开发者帐号创建一个发布证书就够了,如果以后需要在其他电脑上上架App,只需要在钥匙串访问中创建p12文件,把p12文件安装到其他电脑上。这相当于给予了其他电脑发布App的权限。
四、创建Provisioning Profiles文件
1 找到Provisioning Profiles ,点击All,然后点击右上角 + 号
2. 选择App Store,点击Continue
该流程也需要进行两次,分别创建开发用的PP证书和发布的PP证书。
3.在App ID 这个选项栏里面找到你刚刚创建的:App IDs(Bundle ID) 类型的套装,点击Continue
4.选择你刚创建的发布证书(或者生成p12文件的那个发布证书),点击Continue
5.在Profile Name栏里输入一个名字(这个是PP文件的名字,可随便输入,在这里我用工程名字,便于分别),然后点击Generate
注意:wildCard格式的证书没有推送,PassCard等服务的应用,慎重选择。因为PP证书的开发者证书需要真机调试,所以我们需要绑定真机,这里因为之前添加过一些设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的udid复制出来在此添加。在发布PP文件中,是没有这一步的。
6.Download生成的PP文件,然后点击Done
双击就添加到Xcode中,这样在真机调试或者发布时,就可以分别有不同的PP证书与其对应。其实可以不用下载保存
五、在App Store创建应用
1、回到Account,点击iTunes Connect
2、点击我的App
3、点击新建 iOSApp
4、依次按提示填入对应信息,然后点击创建
5、依次把不同尺寸的App截图拉入到对应的里面
6、填入App简介
7、按提示依次输入
此时这个构建版本还没有生成,我们先把基本信息填写完毕,然后再进入Xcode中把项目打包发送到过来。注意:填写完一定要点击右上角的保存。
不要忘记填写测试账号,否则会被拒的,而且一定要跟服务器同事说好,不要删除测试账号,否则同样被拒(联系号码 一定要+ 86 如:+86 13720329661)
六、打包上架
在Xcode中打包工程找到你刚刚下载的发布证书(后缀为.cer)或者p12文件,和PP文件,双击,看起来没反应,但是他们已经加入到你的钥匙串中。如果之前步骤已操作过,可省略此步。
1、打开Xcode,配置项目环境,点击+可以选择Add Apple ID;点击View Details可以查看该Apple Id下的Certificates和Provisioning Profile证书文件,在这里你可以点击下载。在项目Targets下的Identity中,Team选择对应的Apple ID 即可。
特别注意: 这里填写的Apple ID 不是你自己手机上创建的Apple ID 一定要是 开发者账号的 账号和密码 (~QAQ~ 我就在这里被坑过)
2、选择模拟器为iOS Device,按照下图提示操作
3、修改.plist文件,两个.plist文件都要修改
4、Archive在线打包,在真机状态下选择Product——>Archive,如果不是真机状态下,Archive会是灰色不可用的)。
5、打包之后会生成一个 ipa文件 ,然后返回我的App~~在构建版本处,点击Application Loader 就会将其下载下来,然后通过该 软件把ipa文件上传到 appstore上。
打包过程中 会出现的问题
解决方案:Your build settings specify a provisioning profile with the UUID “”, however, no such provisioning profile was found.解决方案
http://www.jianshu.com/p/1cd967ade901
application Loader 上传出现的错误
application loader上传报90158错误
http://www.cnblogs.com/codeforcode/p/4995026.html
6.发送成功后返回到我的App,刷新页面,在构建版本处就会有个 + 号,点击 + 号把发送过来的程序添加上去就行了
7.提交审核
在上架App之前想要 真机测试的同学 请查看
iOS- 最全的真机测试教程 :
http://www.jianshu.com/p/c8e86f62687a
里面包含怎么让多台电脑同时 上架App和同时真机调试。P12文件的使用详解
感觉不错的话 请粉一个 谢谢!!!!
李洪强iOS开发之最全App上架流程的更多相关文章
- 李洪强iOS开发之添加手势
李洪强iOS开发之添加手势 02 - 添加手势
- 李洪强iOS开发之- 实现简单的弹窗
李洪强iOS开发之- 实现简单的弹窗 实现的效果: 112222222222223333333333333333
- 李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView
李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView 11111222
- 李洪强iOS开发之苹果使用预览截图
李洪强iOS开发之苹果使用预览截图 01 在预览的图片中选中你要截得区域 02 - command + C 03 - Command + N 04 - Command + S (保存)
- 李洪强iOS开发之通知的使用
李洪强iOS开发之通知的使用 01 - 在A中发送通知 02 - 在B中监听通知 03 - 在B中通知出发的方法 04 - 在B控制器viewDidLoad调用通知
- 李洪强iOS开发之后使用纯代码实现横向滚动的UIScrollView
李洪强iOS开发之后使用纯代码实现横向滚动的UIScrollView (VTmagic是一个实现左右滚动的控制器的框架,也可以实现此功能) 实现的效果: 01 - 创建四个控制器 02 - 定义需要 ...
- 李洪强iOS开发之 - 实现九宫格并使用SDWebImage下载图片
李洪强iOS开发之 - 实现九宫格并使用SDWebImage下载图片 源码: // // ViewController.m // 08-九宫格扩展 // // Created by 李洪强 ...
- 李洪强iOS开发之 - WebViewJavascriptBridge
李洪强iOS开发之 - WebViewJavascriptBridge 01 - JS端: 02 - iOS端 01 遵守代理协议 02 申明属性 03 开启日志 04 给哪个webview建立J ...
- 李洪强iOS开发本人集成环信的经验总结_09_处理好友请求
李洪强iOS开发本人集成环信的经验总结_09_处理好友请求 实现这种效果: 01 - 遵守处理好友请求的代理协议 02 - 设置代理 03 - 实现代理方法 04 - 实现代理中用到的方法
随机推荐
- Ubuntu14.04 安装 PHP cURL
今天遇到 Fatal error: Call to undefined function curl_init() in /xxx/xxxx/www/application/library/Ku/Htt ...
- Android Studio添加jar包
1.先把jar包复制到项目的lib下,
- Gulp vs Grunt 前端构建工具对比
Gulp vs Grunt 前端工程的构建工具对比 1. Grunt -> Gulp 早些年提到构建工具,难免会让人联想到历史比较悠久的Make,Ant,以及后来为了更方便的构建结构类似的Jav ...
- LiteHttp:一款‘智能’的HTTP框架类库
LiteHttp:一款‘智能’的HTTP框架类库(转自github) 简介 LiteHttp是一款简单.智能.灵活的HTTP框架库,它在请求和响应层面做到了全自动构建和解析,主要用于Android快速 ...
- php更新修改excel中的内容例子
代码如下 复制代码 //模板存放目录$dir = $DOCUMENT_ROOT.'/backoffice/admin/oemcheck/'; $templateName = '1.xlsx';$ou ...
- python time模块和datetime模块详解
一.time模块 time模块中时间表现的格式主要有三种: a.timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b.struct_time时间元组,共 ...
- 【js】 流式布局 页面
<!DOCTYPE html><html><head> <meta content="text/html; charset=utf-8" ...
- 【CocoaPods】配置CocoaPods前 - 本地安装好Ruby环境
xcode (反正就是代码编辑器) Xcode就不用说了把. homebrew (反正就是软件管理器) homebrew是一个包管理器,用于在mac上安装一些os x上没有的UNiX工具(比如wget ...
- VB 思维导图总结(三)
续上篇.vb总结之“思维导图”(2) 第十章.绘制图形 第十一章.数据库技术... 第十二章.总结! 相信有了vb的一个基础,应对接下来的学习会顺畅些.加油!
- mysql存储过程中传decimal值会自动四舍五入,没有小数
通过 call proc(0.2,0.5); 查看结果数据库竟然是0 和 1 原因:proc的参数没有设置好 参数:原本是 in a decimal,in b decimal 应该改为:in ...