时隔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

4.7  750 x 1334
 
5.5 1242 x 2208 
 
ipad 1024 x 768

xcode7--iOS开发---将app打包发布至app store的更多相关文章

  1. 【2】IOS APP打包发布

    目的: 本文的目的是对IOS APP打包发布做了对应的介绍,大家可根据文档步骤进行mac环境部署: 申请苹果开发者账号 此处略 创建申请证书 这样做的目的就是为你的电脑安装发布许可证,只有这样你的电脑 ...

  2. 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 ...

  3. iOS开发之app打包发布流程

    一.准备工作 苹果开发者中心 1.申请苹果开发者账号 首先需要申请苹果开发者账号才能在APP store 里发布应用. 开发者账号分类:(1)个人开发者账号 (2)企业开发者账号 主要的区别是:点击这 ...

  4. iOS 开发 -----公司测试打包上传流程

    打包iOS应用程序 如果想要将做的iOS应用程序安装到自己的iOS设备上测试.或者安装到别人的iOS设备上,或者想发布到App Store中,先要给应用签名.签名就要有证书,这就需要申请证书的过程了. ...

  5. ios开发--企业帐号发布

    这两天需要发布一个ipa放到网上供其他人安装,需要用到企业级开发者账号. 首先详细说明一下我们的目标,我们需要发布一个ipa放到网上,所有人(包括越狱及非越狱设备)可以直接通过链接下载安装,不需要通过 ...

  6. 《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 ...

  7. IOS开发帐号与发布问题综合

    一.iOS开发:AD-HOC版应用测试方法:http://hi.baidu.com/kangle1208/item/163f39530abb4d3195eb05a7 二.plist的方式发布: 1.y ...

  8. iOS开发从申请账号到上线APP Store步骤

    1.developer.apple.com 申请开发者账号 2.根据API Cloud创建证书: http://docs.apicloud.com/Dev-Guide/iOS-License-Appl ...

  9. iOS 开发之应用内弹出 App Store 应用界面

    在APP内给其他APP做推广,经常用到在应用内弹出应用的APP #import <StoreKit/SKStoreProductViewController.h> 设置代理:<SKS ...

随机推荐

  1. WPF的依赖项属性

    WPF的依赖项属性 属性与事件是.NET抽象模型的核心部分.WPF使用了更高级的依赖项属性(Dependency Property)功能来替换原来.NET的属性,实现了更高效率的保存机制,还添加了附加 ...

  2. vs2017取消起始页(设定起始页)/(.ashx文件的添加)

    1.设定起始页:在要设定起始页的视图(如Index视图)上直接右击,然后点击“设为起始页” 2.取消起始页:点击菜单栏“调试”,然后点击最后一行“项目名+属性”,打开后选中左侧栏中的“web”,选中“ ...

  3. STL库中string类内存布局的探究

    在STL中有着一个类就是string类,他的内存布局和存储机制究竟是怎么样的呢? 这就是建立好的string 可以看出,图中用黄色框框标注的部分就是主要区域 我们用来给string对象进行初始化的字符 ...

  4. 关于c3p0连接池连接mysql数据库需要注意的几点

    什么是数据库连接池: 用池来管理Connection,这可以重复使用Connection.有了池,所以我们就不用自己来创建Connection,而是通过池来获取Connection对象. 当使用完Co ...

  5. ref 和 out 的区别

    ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递. 对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别. 总结起来,他们有如下语法区别: 1.re ...

  6. ASP.NET 中对大文件上传的简单处理

    在 ASP.NET 开发的过程中,文件上传往往使用自带的 FileUpload 控件,可是用过的人都知道,这个控件的局限性十分大,最大的问题就在于上传大文件时让开发者尤为的头疼,而且,上传时无法方便的 ...

  7. 关于httpclient的终结

    End of life 关于Commons HttpClient项目现在已经结束,不再开发.它已经被HttpClient和HttpCore模块中的ApacheHttpComponents项目所取代,新 ...

  8. Python学习系列----第六章 数据结构

    本章主要讲的是python中重要的四种数据结构,分别是列表.元组.字典和集合. 6.1 列表 list 是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目.列表中的项目应该包括在方括 ...

  9. (六)svn 服务器端使用之权限管理

    权限管理(了解) 认证授权机制 在企业开发中会为每位程序员.测试人员等相关人员分配一个账号,用户通过使用svn客户端连接svn服务时需要输入账号和密码,svn服务对账号和密码进行校验,输入正确可以继续 ...

  10. SpringBoot热部署插件

    1.配置在 maven工程中的pom.xml文件中 2.SpringBoot框架中提供的一个热部署插件,利用该热部署插件,我们可以在修改代码后不用重启应用,大大提高开发效率: