iOS App 上架流程图文教学
在上架 App 之前必须先准备好开发者帐号,但申请开发者帐号因法兰克早在之前已经申请好了,故就跳过此步骤,直接从产生凭证到上传 App 开始讲起。首先,要将自己辛苦写好的 App 送审的话,则要依序做完下列几件事情即可。
在开发者后台产生.cer(凭证档)
在开发者后台产生 App ID
在开发者后台产生 Provisioning Profile
在App Store Connect送审 App
.cer(凭证档)
凭证档的用意是要告诉 Apple 说这台电脑是开发者在使用的,若在本机没有安装是无法打包 App 上架的。另外凭证是会到期的,一年后必须重新安装,到期日即为从注册成为开发者后开始算一年。
App ID
包含要上架 App 的相关设定。
Provisioning Profile
该档案是要告诉 Apple 说,即将要被上传的 App 资讯,包含凭证档(.cer) 和 App ID 等。若有使用 Apple ID 登入 Xcode,则会自动在本机产生档案,将不需要额外再做设定。(这个动作在早期是要手动新增的)
编辑
编辑
开发者后台
1. 产生凭证档.cer
证书我们这边可以借助辅助工具 appuploader
Appuploader 可以辅助在 Windows、linux 或 mac 系统直接申请 iOS 证书 p12,及上传 ipa 到 App Store,最方便在 Windows 开发上架没有苹果 Mac 电脑的开发者!配合本教程使用,可以快速掌握如何真机测试及上架!
点击苹果证书按钮
编辑
点击新增
编辑
输入证书密码,名称
这个密码不是账号密码,而是一个保护证书的密码,是 p12 文件的密码,此密码设置后没有其他地方可以找到,忘记了只能删除证书重新制作,所以请务必记住密码。还有为了安全起见,密码不要太简单。 证书名称是你为了在证书列表里面便于区别的一个字符,自己好辨识就可以,尽量是是字母和数字之类
选择证书类型
带 distribution 的是发布类型,带 development 的是开发类型。
apple 类型=ios+mac,所以开发时选择 ios app development 和 apple development 类型都是可以的
选择 bundle id
只有部分类型的证书需要选择 bundle id,例如推送证书。因为大部分证书是不和 app 关联的。而是通过描述文件 profile 文件关联 app。
1.1 在产生.cer 之前必须先产生.certSigningRequest (CSR) 档案,打开 Launchpad 并搜寻 keychain ,开启「钥匙图存取」
编辑
1.2 在 Toolbar 选取「钥匙图存取」->「偏好设定」后,在分页选取「凭证」后,将「线上凭证状态协定(OCSP)」和「凭证撤销列表(CRL)」皆设定为「关闭」
编辑
1.3 将「偏好设定」关掉后,打开「钥匙图存取」->「凭证辅助程式」->「从凭证授权要求凭证」
编辑
1.4 在「凭证辅助程式」视窗,填入以下资讯
*使用者电子邮件=> 填入开发者帐号的「Apple ID」
*一般名称=> 开发者帐号的名字
* CA 电子邮件=> 不用填
*已将要求=> 储存到硬碟
*勾选「指定密钥配对资讯」
1.5 在「凭证辅助程式」视窗下的「密钥配对资讯」,将「密钥大小」设为 2048 bits ;「演算法」设为 RSA
编辑
以上步骤完成后,已成功产生.certSigningRequest 并存放至指定的路径了。
编辑
1.6 有了.certSigningRequest 后,接着要产出.cer 凭证档案
登入 Apple Developer 网页,点选「Certificates, Identifiers & Profiles」
编辑
1.7 点选左侧栏位「Certificates」 -> 「+」来新增凭证
编辑
1.8 选取「iOS Distribution(App Store and Ad Hoc)」后,点选「Continue」继续下一步
编辑
1.9 点选「Choose File」上传第一个步骤产生.certSigningRequest 档案后,点选「Continue」继续下一步
编辑
1.10 点选「Download」储存.cer 凭证档案后,确定已储存在本机后,点选「Done」完成
编辑
1.11 最后双击下载的.cer 档即会自动执行安装至 key chain 中
2. 产生 provisioning profile 档案
2.1 建立 Identifiers
在生成 provisioning profile 之前,必须先建立 Identifiers,点选左侧栏位 Identifiers, 接着点选右侧上方的「+」→「App IDs」→ Type 选择「App」
编辑
编辑
编辑
2.2 在 Registering an App ID 页面设定以下资讯
*Description => App 的描述
*Bundle ID 选择 Explicit App ID => 填入同 Xcode 的 Bundle identifier
*依 App 实际需求选取 App Services
以上确认无误后点选「Continue」进行下一步
编辑
编辑
Bundle identifier
2.3 确认 App ID 资讯无误后,点按「Register」
编辑
2.4 产生.Provisioning Profile
在 Profiles 点选「+」 新增 Profile。
编辑
选取「App Store」,点选「Continue」下一步。
编辑
2.5 选取上一步骤所建立的 App ID 后点选「Continue」
编辑
2.6 选取凭证后点选「Continue」
编辑
2.7 Provisioning Profile Name 同 App ID,点选「Continue」
编辑
2.8 建立完成后,下载并安装。
3.送出审核申请单
3.2 登入后点选我的 App
编辑
3.3 新增 App
点选左上角的+ 号,并选择「新的 App」,并填妥以下栏位后点选「建立」
*平台=> iOS
*名称=> App Store 上呈现的 App 名称
*主要语言=> App 的主要语言(例繁体中文)
*套装组 ID => Bundle ID
*SKU => App 名称- 版本(例{App Name}-1.0),此名称不会显示在 App Store 上
编辑
3.4 填写 App 资讯
请选择该 App 的类别,其它栏位会自动带入,点选「储存」。
编辑
3.5 设定 App 定价与供应状况,这边依该 App 的实际状况填入即可
3.6 提供各个装置的 App 萤幕快照
点选左侧的 1.0 准备提交,这边会要求提供 App 在各个装置的萤幕快照,此时则必须开启模拟器撷取各种设备的图。若只有上架到 iPhone 就只需要准备 iPhone 的图即可,图的尺寸则必须遵照以下网址内 Screenshot Properties 提供的尺寸上传。
iTunes Connect Properties
Describes how to use the iTunes Connect website to manage iOS and Mac apps on the App Store.
备注:千万不要傻傻的一张一张拍照再调整大小,可利用模拟器的拍照功能(command + s),但要记得先把模拟器缩放到最大(command + 1)再进行拍照,即可拍出符合上传的尺寸大小。若先上传 5.5 吋的照片再点选其它显示器,则其它显示器预设为套用 5.5 吋的规格,请记得先取消勾选。
编辑
编辑
3.7 填写其它 App 相关资讯
*描述=> App 的功能和特色描述
*关键字=> 在 App Store 里的搜寻关键字(可设定多组并用逗号隔开)
*支援 URL => App 的相关网页
编辑
*填写一般 App 资讯上
*传 App 的图像、版权
*设置 App 的分级
编辑
编辑
*App 审查资讯=> 联络资讯
备注:联络电话填入的格式比较符合拨打国际电话的格式,又分为手机和市内电话。
手机:+886 972111111
市内电话:+886 02 11111111
*展示帐号=> 若 App 有实作登入功能的话,则该栏位必须填入
设定要发行此版的方式
编辑
以上都填妥后点选「储存」,若有问题,网页则会贴心的提示错误讯息。
4. 透过 Xcode 打包 App 并上传
Xcode 开发环境已与 App Store Connect 紧密整合在一起了,新增 App 到 App Store Connect 时,使用 Xcode 上传 App 的建置版本既直接又有效率。
4.1 将编译的目标机器设置成「Generic iOS Device」,接着选取 Product –> Archive
编辑
4.2 点选「Upload to App Store」
编辑
编辑
4.4 登入 App Store Connect 查看上传的 App 活动-> iOS 建置版本,即可看到透过 Xcode 上传的 App 版本
备注:没有很即时,必须等待一下子,才可在 App Store Connect 查找到刚刚上传的档案
编辑
4.5 登入 App Store connect 新增透过 Xcode 上传的版本
App Store -> iOS App -> XX 准备提交-> 建置版本。点选「+」号,选取刚刚透过 Xcode 上传的建置版本,点选「完成」
编辑
4.6 点选右上角的「提交以供审查」
编辑
4.7 选择「出口合规资讯」、「内容版权」、「广告识别码」等相关选项后,点选「提交」
编辑
以上已完成送审的动作了~哇终于完成了再来就等待审查了啰!以法兰克的例子给大家参考,大概需要 7~10 天等待的时间喔~
iOS App 上架流程图文教学的更多相关文章
- iOS App上架流程(2016详细版)
iOS App上架流程(2016详细版) 原文地址:http://www.jianshu.com/p/b1b77d804254 感谢大神整理的这么详细 一.前言: 作为一名iOSer,把开发出来的Ap ...
- iOS App 上架流程
iPhone App 上架流程 1. 申请 App ID (1) 连到 Devel ...
- iOS - App上架流程(复习+已用xcode8)
一.前言: 今天又要上架一款APP,顺便来复习一下APP上架流程 下面就来详细讲解一下具体流程步骤. 二.准备: 一个已付费的开发者账号(账号类型分为个人(Individual).公司(Company ...
- iOS:App上架流程和支付宝支付流程
App上架大致流程: 1.花99美元在苹果开发中心注册一个开发者账号: 2.登陆开发者账号,进入member Center,即开发者成员中心: 3.选取证书标示符(certificates Ident ...
- 苹果iOS App上架流程,非iOS开发人员上架教程
iOS应用上线发布流程一般包含相关证书文件的配置.Xcode的设置.App Store Connect填写App的相关信息.ipa包上传.审核结果以及相关邮件回复.相关证书文件的配置与Xcode的 ...
- 史上最用心的 iOS App 上架流程
题记 麻痹起来嗨!看网上那么多的教程,依然在我心爱的爱屁屁在上架的时候遇到各种 J8 问题,最大的问题就是:Xcode 证书什么的,Provisioning Profile 什么的,Debug 什么的 ...
- iOS App上架流程(2016详细版)来源DeveloperLY
一.前言: 作为一名iOSer,把开发出来的App上传到App Store是必要的.下面就来详细讲解一下具体流程步骤. 二.准备: 一个已付费的开发者账号(账号类型分为个人(Individual).公 ...
- iOS App上架流程(2016详细版
http://www.jianshu.com/p/b1b77d804254 iOS App上传项目遇到的问题 http://www.jianshu.com/p/9195cd991fc7
- 史上最用心的iOS App上架流程【转】
转:http://www.jianshu.com/p/16fa56eacb5e 题记 麻痹起来嗨!看网上那么多的教程,依然在我心爱的爱屁屁在上架的时候遇到各种 J8 问题,最大的问题就是:Xcode ...
- 《简化iOS APP上架流程,App Uploader助你搞定!》
转载;http://kxdang.com/topic/appuploader/questions.html Appuploader 常见错误及解决方法 问题解决秘籍 遇到问题,第一个请登录苹果开发 ...
随机推荐
- JUC并发编程学习笔记(十二)Stream流式计算
Stream流式计算 什么是Stream流式计算 大数据:存储+计算 集合.MySql这些的本质都是存储东西的: 计算都应该交给流来操作! 一个案例说明:函数式接口.lambda表达式.链式编程.St ...
- 题解 ARC104F
前言 在这里首先感谢一下题解区的 FZzzz,本人的题解思路主要是基于他并给出了自己的理解. 如非特殊说明,本题解中的数学符号原则上与题目中一致. 题目分析 需要转化的喵喵题. 我们需要把原问题转化成 ...
- java固定窗口大小
this.setResizable(false);//////frame.setResizable(false)
- Acwing 180. 排书
给定 \(n\) 本书,编号为 1∼n. 在初始状态下,书是任意排列的. 在每一次操作中,可以抽取其中连续的一段,再把这段插入到其他某个位置. 我们的目标状态是把书按照 1∼n 的顺序依次排列. 求最 ...
- 提升开发技能:10个高级的JavaScript技巧
前言 在这个快速发展的数字时代,JavaScript作为一种广泛应用的编程语言,其重要性愈发凸显.为了在竞争激烈的开发领域中保持竞争力,不断提升自己的技能是至关重要的.本文小编将您介绍10个高级的Ja ...
- .net 下优秀的DI框架推荐,看看你用过几个?
在.NET生态系统中,有许多出色的依赖注入(DI)框架可供选择.每个框架都有其独特的特点和优点,可以根据项目需求和偏好进行选择.下面详细介绍一些.NET中优秀的DI框架,它们的优点以及适用场景. 1. ...
- RTMP协议学习——Message与Chunk解读
前言 之前通过对抓包数据的学习和分析,对RTMP协议有了一个整体的认知,大致了解了RTMP从建立连接到播放视频的流程,文章请看<RTMP协议学习--从握手到播放>.但是对于RTMP消息传输 ...
- games101-2 透视深度插值矫正与抗锯齿分析
透视深度插值矫正与抗锯齿分析 深度插值的差错原因 透视深度插值公式推导 games101中的错误 msaa与ssaa简要定义 games101中ssaa的实现 games101中msaa的实现 深度插 ...
- Net 高级调试之十二:垃圾回收机制以及终结器队列、对象固定
一.简介 今天是<Net 高级调试>的第十二篇文章,这篇文章写作时间的跨度有点长.这篇文章我们主要介绍 GC 的垃圾回收算法,什么是根对象,根对象的存在区域,我们也了解具有析构函数的对象是 ...
- 编辑linux服务启动命令(app-script.sh命令编写)
#!/bin/sh# 注:这里可替换为你自己的执行程序,其他代码无需更改APP_NAME=app-biz.jar #使用说明,用来提示输入参数usage() { echo "Usage: s ...