一 ,上架iOS应用市场前的准备
1.选择适合自己的苹果开发者账号
(1) 个人账号(Individual):费用99美金一年, 该账号在App Store销售者只能显示个人的ID,比如zhitian zhang,单人使用。个人账号只能有一个开发者。100个苹果的iOS设备UDID测试。
(2) 公司/机构账号(Company/Organization):费用99美元一年, 该账号在App Store销售者可以显示类似Studios,或者自定义的团队名称,比如Mamshare INC,公司账号可以允许多个开发者协作开发,比个人多一些账号管理的设置,可以设置多个AppleID,分4种管理级别权限,详细见备注。100个苹果的iOS设备UDID测试。但是申请时需要填写公司的邓白氏编码(D-U-N-S)。
(3) 企业账号(Enterprise):费用299美金一年, 该账号开发应用不能发布到App Store,只能企业内部应用,苹果的iOS设备UDID数量不限制。企业账号适合不希望上线App Store,但是需要企业内部比如1000人的iOS设备都部署。公司测试部门需要全公司测试设备,突破100个UDID的限制。
(4) 教育账号(University):费用0美元 ,只能教育机构或学院内部使用。必须是苹果iOS开发者计划授权机构。不能对外正式发布iOS应用程序。
2.获得上架所需要的证书
1、开发者证书(分为开发和发布两种,类型为ios Development,ios Distribution),这个是最基础的,不论是真机调试,还是上传到appstore都是需要的,是一个基础证书,用来证明自己开发者身份的;
2、appID,这是每一个应用的独立标识,在设置项中可以配置该应用的权限,比如是否用到了PassBook,GameCenter,以及更常见的push服务,如果选中了push服务,那么就可以创建生成下面第3条所提到的推送证书,所以,在所有和推送相关的配置中,首先要做的就是先开通支持推送服务的appID;
3、推送证书(分为开发和发布两种,类型分别为APNs Development ios,APNs Distribution ios),该证书在appID配置中创建生成,和开发者证书一样,安装到开发电脑上;
4、Provisioning Profiles,这个东西是很有苹果特色的一个东西,我一般称之为PP文件,该文件将appID,开发者证书,硬件Device绑定到一块儿,在开发者中心配置好后可以添加到Xcode上,也可以直接在Xcode上连接开发者中心生成,真机调试时需要在PP文件中添加真机的udid;是真机调试和上架必备。
3.对APP进行打包并上传到App Store
1)登录苹果开发中心登入你的账号
2)添加APP ID
3)创建证书
上传app包文件到app store后台。
方法1.借助辅助工具appuploader,首先按照流程注册登录后,即可直接创建证书,通过hbuilder上传
创建ios(.p12)证书
点击苹果证书
2.新增苹果证书
3.输入证书密码:这个密码不是账号密码,而是一个保护证书的密码,是p12文件的密码,此密码设置后没有其他地方可以找到,忘记了只能删除证书重新制作,所以请务必记住密码。还有为了安全起见,密码不要太简单。
证书名称是你为了在证书列表里面便于区别的一个字符,自己好辨识就可以,尽量是是字母和数字之类
4.选择证书类型: 带distribution的是发布类型,带development的是开发类型。apple类型=ios+mac,所以开发时选择ios app development和apple development 类型都是可以的
5. 选择bundle ID:只有部分类型的证书需要选择bundle id,例如推送证书。因为大部分证书是不和app关联的。而是通过描述文件profile文件关联app。
6. 使用appuploader服务同步:如果期望制作好证书后在其他电脑上同样可以下载到这个证书,或者和你同事同步此证书,则需要勾选使用appuploader服务同步。否则您需要手动管理p12文件在不同电脑之间的传输,并且一但创建下载后,无法在其他电脑下载,只能手动复制文件过去。一般情况下,推荐使用appuploader服务同步。
7. 证书类型说明:IOS开发选择apple development或者ios app development 类型
ios 发布选择 apple distribution或者 ios distribution (app store and ad hoc)
开发推送证书选择 apple push notification service ssl (sandbox)
发布推送证书选择 apple push notification service ssl (sandbox & production)
其他证书不是很常用,可以自行百度各种证书说明。
8.官遇到问题,首先登录文章开通的苹果开发官网。检查是否有权限/是否被停用/是否过期/是否有协议需要同意。在右上角切换账号检查所关联的账号是否功能正常。Apple邮箱会接收到许多通知消息,如IPA上传,账号发生变化,被停用,都会有消息提示。
9.上架版本需要使用正式的证书(apple distribution),开发测试用开发证书(apple development)
10.一般都要创建两个证书一个用于开发,一个用于上架,如果有支付内容,还必需要 Apple Pay 的证书。证书无需创建太多,apple对证书有数量限制,一般3个开发证书就不让创建更多同类型的证书了。
11.点击p12下载到电脑。
添加测试设备UDID
1.点击udid
2.新增udid
创建描述文件
1.点击描述文件
2.点击新增描述文件,在弹出框里面选择要安装测试到的设备,如果是发布类型无需选择设备。选择使用的证书,如果忘记是哪个 了可以选择全部证书。
3.描述文件类型说明:带app store类型的是发布类型,带development的是开发类型,push没有描述文件,所以不要问推送选择哪种描述文件类型,os开发选择ios app development类型,发布app的时候选择app store类型。(ps:除了APP Store类型的描述文件外,其他的描述文件都需要选择测试设备)
4.点击下载按钮下载桌面
测试安装App
1.以HBuilder打包Vue项目为例,打开详细设置进行设置完成后,点击保存。
2.官菜单项点击‘发行-> 云打包-打原生包’,出现如下图所示弹框,取消广告勾选,没有错误提示,选择刚才制作的p12和.mobileprovision文件,输入刚才设置的证书密码。点击打包,等待打包未完成(仅以ios为例)
3.官打包完成后点击确定“OK”按钮查看打包状态信息,打包完成后,保存安装包到目标文件,发送到手机端安装即可运行。
4.测试设备:如果选择的类型是ios app development 类型,则全部测试设备旁边必须有测试设备并且勾选上,如果没有显示测试设备,点击框框下面的添加测试,然后把测试设备的udid输入,把ios设备连接到当前pc,会自动获得设备的udid。 如果app编译后无法安装到设备,可能是因为设备的udid没有添加进入描述文件,则需要添加描述文件后重新编译。
方法2.Xcode上传,这里简单讲下步骤:
构建打包ipa文件
打包成功后,选择具体包版本,点击Distribute App。
选择App Store Connect。(Ad Hoc选项代表出包给测试人员测试)
点击next,后面几个步骤都点击Next按钮,选项配置不用管都按默认的走。
最后点击Upload,就开始上传了,耐心等待。我大概6分钟就上传成功了(包文件如果大或者网速慢时间相对会比较长)。这是我上传成功的截图:
上传成功后,登录App Store Connect,进入app详情页面,点击顶部TestFlight,在构建版本中就可以看到你刚上传的版本,状态一般会显示正在处理。
如果等了很久(10分钟左右吧)刷新页面还是没看到上传的构建版本,那么就是ipa包被拒绝了,这时候一般会收到拒绝原因的邮件。我就是这种情况���(包含过时的UIWebView),邮件如下:
解决问题,重新上传就行了。 最终上传构建的app版本状态显示为准备提交才能提交审核,状态从正在处理变为准备提交我等待了20分钟左右,这个时间是不固定的,看具体情况,类似那种几百兆的app,时间就会特别长。
选择APP版本,提交审核
登录App Store Connect,进入App详情页面,找到构建版本,然后选择一个最新提交的构建版本。
滑动页面到最顶部,点击存储,然后再点击右边的添加以供审核,确认相关信息后,就提审成功了。
接下来就是等待审核,苹果审核时间大多集中在晚上凌晨或者第二天早上6-8点, 顺利的话一般2天左右就有审核结果。
等了2天,“不出意外”,我提交的审核被无情的拒绝了:
这种情况没办法,只能根据实际情况去进行修改,或者做出必要的解释说明。被拒绝多次也是很常见的,反正耐心的去解决苹果提出的问题,最终都会通过审核的。
至此,iOS app上架app store流程就结束了。