xcode7--iOS开发---将app打包发布至app store
时隔3个月再次接触应用打包,又是一顿折腾
说说这次的感受吧:
变得是打包时间减少到4小时(其中大部分时间还是xcode7或者是iOS9的原因),不变的是还是一如既往的坑!!
好了,废话不多说,下面讲讲如何将一个APP 发布到 苹果的app store!
在xcode7以前,用户是不能直接真机调试的,必须有开发者帐号才可以真机! xcode7出现后,用户可以直接把app 安装在自己的手机上面
1=====>首先你得向apple 支付99刀成为苹果的全平台开发者(xcode7以前,99刀只能开发iOS应用),他会把你的apple id变成开发者帐号,这是最最基础的
2=====>在xcode的preference里面填写你的开发者帐号
3=====>注册App ID,在Xcode中填写Bundle Identifier
在开发者网站中新增一个APP ID,他是专门属于你的这个应用的
---------------------------我是华丽的分割线-------------------------
bundle id 一般写com.你的公司名.应用名!
然后continue
---------------------------我是华丽的分割线-------------------------
然后打开XCode,选择Target > Summary。在Identifier输入框中输入上面注册的Bundle Identifier。
---------------------------我是华丽的分割线-------------------------
4=====>创建发布证书(Distribution Certificate)
iOS应用都有一个安全证书用于验证开发者身份和签名
打开mac上的钥匙串,然后打开证书助理,选择从证书机构颁发证书
---------------------------我是华丽的分割线-------------------------
---------------------------我是华丽的分割线-------------------------
---------------------------我是华丽的分割线-------------------------
,
---------------------------我是华丽的分割线-------------------------
---------------------------我是华丽的分割线-------------------------
添加刚才创建的.CSR签名文件。
刷新页面,然后就可以下载证书了。下载后安装。
最后一步,打开Keychain Access。选中刚才安装的private key,选择菜单中的Export Item将私钥导出。将导出的私钥备份到一个安全的地方,以便以后重装了系统可以还原。(团队共用这一份)
5=====> 创建Distribution Provisioning Profile(俗称pp文件)
打开Provisioning Portal,选择Provisioning -> Distribution,选择添加一个新的profile。Distribution Method要选择App Store,App ID需要输入在前面申请的App ID。证书也要选择刚开始申请的.cer文件.提交后需要等一会儿再刷新这个页面。然后就可以下载和安装profile了。安装后profile会被添加到XCode。然后就可以不用管了
步骤:
,
---------------------------我是华丽的分割线-------------------------
---------------------------我是华丽的分割线-------------------------
---------------------------我是华丽的分割线-------------------------
---------------------------我是华丽的分割线-------------------------
6=====>用Distribution Profile为应用签名
打开XCode,在Build Settings中选择Code Signing。在Release设置上选择刚才申请的Distribution Profile。
一定要选择生成目标为iOS device,然后点击Archiving开始打包应用。
点击Edit Schemes,将Archive设置为Release。
7=====>在iTunes Connect上传App
在iTunes connect上新建你的app(我就是忘了先新建(第7步和8步顺序相反),所以就导致了一只出错,报我的bundle id 不合法,弄了好久才知道我应该在iTunes connect先新建app才行)
------------主要是下面这个---------------
---------------------------我是华丽的分割线-------------------------
8=====>打包App
这样就可以把本地的app 添加到connect中了,然后就可以构建了
然后把这一页的信息填写正确后就可以提交了(很多坑!!! )
再说这次提交时因为xcode7或者ios9而导致的问题:
1).提交app store时,突然出现这个错误(xcode7以前从来没有遇到,不知道是不是xcode7或者ios9的锅)
搜索到的技术文章说有三种情况可能会导致这个问题:
1.检查启动图片是不是.png格式的
2.Put those images at root level of your project
3.放置一张启动图片命名为"Default-568h@2x.png",大小是640 × 1136 pixel的放在你的工程根目录下
我的app就是这样解决这个问题的
2).在iTunes connect里面填写信息的时候,APP图片不合法,首先必须要求大小是1024*1024的
造成的原因是你的图片有圆角
解决方法是先用画图工具把它另存为.jpg格式的,然后再把它转换成.png格式的(也可以不用转)
解决问题!
3).在iTunes connect里面填写截图信息的时候,截屏图片不合法(这里是我手动更改的像素,太痛苦了,再也不想弄了...)
必须要求你的尺寸为:
3.5 640 x 960
4.0 640 x 1136
xcode7--iOS开发---将app打包发布至app store的更多相关文章
- 【2】IOS APP打包发布
目的: 本文的目的是对IOS APP打包发布做了对应的介绍,大家可根据文档步骤进行mac环境部署: 申请苹果开发者账号 此处略 创建申请证书 这样做的目的就是为你的电脑安装发布许可证,只有这样你的电脑 ...
- iOS利用Application Loader打包提交到App Store时遇到错误The filename 未命名.ipa in the package contains an invalid character(s). The valid characters are:A-Z ,a-z,0-9,dash,period,underscore,but the name cannot start w
iOS利用Application Loader打包提交到App Store时遇到错误: The filename 未命名.ipa in the package contains an invalid ...
- iOS开发之app打包发布流程
一.准备工作 苹果开发者中心 1.申请苹果开发者账号 首先需要申请苹果开发者账号才能在APP store 里发布应用. 开发者账号分类:(1)个人开发者账号 (2)企业开发者账号 主要的区别是:点击这 ...
- iOS 开发 -----公司测试打包上传流程
打包iOS应用程序 如果想要将做的iOS应用程序安装到自己的iOS设备上测试.或者安装到别人的iOS设备上,或者想发布到App Store中,先要给应用签名.签名就要有证书,这就需要申请证书的过程了. ...
- ios开发--企业帐号发布
这两天需要发布一个ipa放到网上供其他人安装,需要用到企业级开发者账号. 首先详细说明一下我们的目标,我们需要发布一个ipa放到网上,所有人(包括越狱及非越狱设备)可以直接通过链接下载安装,不需要通过 ...
- 《iOS开发实战 从入门到上架App Store(第2版)》书籍目录
第1章 开发准备 1.1 iOS 10新特性简述 1.1.1 新增触觉反馈编程接口 1.1.2 SiriKit框架的开放 1.1.3 引入Messages App 1.1.4 通知框架的整合与扩展 1 ...
- IOS开发帐号与发布问题综合
一.iOS开发:AD-HOC版应用测试方法:http://hi.baidu.com/kangle1208/item/163f39530abb4d3195eb05a7 二.plist的方式发布: 1.y ...
- iOS开发从申请账号到上线APP Store步骤
1.developer.apple.com 申请开发者账号 2.根据API Cloud创建证书: http://docs.apicloud.com/Dev-Guide/iOS-License-Appl ...
- iOS 开发之应用内弹出 App Store 应用界面
在APP内给其他APP做推广,经常用到在应用内弹出应用的APP #import <StoreKit/SKStoreProductViewController.h> 设置代理:<SKS ...
随机推荐
- WPF的依赖项属性
WPF的依赖项属性 属性与事件是.NET抽象模型的核心部分.WPF使用了更高级的依赖项属性(Dependency Property)功能来替换原来.NET的属性,实现了更高效率的保存机制,还添加了附加 ...
- vs2017取消起始页(设定起始页)/(.ashx文件的添加)
1.设定起始页:在要设定起始页的视图(如Index视图)上直接右击,然后点击“设为起始页” 2.取消起始页:点击菜单栏“调试”,然后点击最后一行“项目名+属性”,打开后选中左侧栏中的“web”,选中“ ...
- STL库中string类内存布局的探究
在STL中有着一个类就是string类,他的内存布局和存储机制究竟是怎么样的呢? 这就是建立好的string 可以看出,图中用黄色框框标注的部分就是主要区域 我们用来给string对象进行初始化的字符 ...
- 关于c3p0连接池连接mysql数据库需要注意的几点
什么是数据库连接池: 用池来管理Connection,这可以重复使用Connection.有了池,所以我们就不用自己来创建Connection,而是通过池来获取Connection对象. 当使用完Co ...
- ref 和 out 的区别
ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递. 对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别. 总结起来,他们有如下语法区别: 1.re ...
- ASP.NET 中对大文件上传的简单处理
在 ASP.NET 开发的过程中,文件上传往往使用自带的 FileUpload 控件,可是用过的人都知道,这个控件的局限性十分大,最大的问题就在于上传大文件时让开发者尤为的头疼,而且,上传时无法方便的 ...
- 关于httpclient的终结
End of life 关于Commons HttpClient项目现在已经结束,不再开发.它已经被HttpClient和HttpCore模块中的ApacheHttpComponents项目所取代,新 ...
- Python学习系列----第六章 数据结构
本章主要讲的是python中重要的四种数据结构,分别是列表.元组.字典和集合. 6.1 列表 list 是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目.列表中的项目应该包括在方括 ...
- (六)svn 服务器端使用之权限管理
权限管理(了解) 认证授权机制 在企业开发中会为每位程序员.测试人员等相关人员分配一个账号,用户通过使用svn客户端连接svn服务时需要输入账号和密码,svn服务对账号和密码进行校验,输入正确可以继续 ...
- SpringBoot热部署插件
1.配置在 maven工程中的pom.xml文件中 2.SpringBoot框架中提供的一个热部署插件,利用该热部署插件,我们可以在修改代码后不用重启应用,大大提高开发效率: