Hbuilder用自有证书打包 ios App上架AppStore流程
最近在用Hbuilder做跨平台开发,经过一番研究终于在苹果商店上架成功了一款产品!这款产品就很简单,直接用hbuilder打包好,然后上传到商店即可。这里参照ios app提交应用商店 这篇文章结合hbuilder,从应用打包,到提交到苹果商店的流程详细介绍一下,希望对有需要的哥哥姐姐们有帮助、
一、打包:
应用写好了之后就可以打包了,hbuilder云打包很简单,但是你想要发布到应用商店的话是需要自有证书的,

1。 前期工作
这里就需要用到 AppId,描述文件profile,以及私钥证书。下面详细讲解这三项的申请步骤
必须条件:苹果开发者账号,mac系统
苹果开发者账号:我是直接用公司额账号,所以省去了申请账号的步骤,访问苹果开发者中心https://developer.apple.com/account/overview.action注册或者登录账号,

1.1创建appId
登录进去之后,找到Identifiers

下一步点加号,对点加号

然后会跳出一个界面,有两个表单是要自己填写的,分别是Name和Bundle Id

上面这段话翻译过来就是:App ID字符串包含两个部分,以句点(.)分隔 - 应用ID前缀(默认情况下定义为您的Team ID)和App ID后缀(定义为Bundle ID搜索字符串)。 App ID的每个部分都有不同的重要用途
这边Name就可以随便填,没有什么限制,最好是项目名称,这样方便自己辨识(不允许中文);
另外一个就是Bundle Id

这是你appid的后缀,这个需要仔细。因为这个内容和你的程序直接相关,后面很多地方要用到,最好是com.yourcompany.yourappname的格式,我用的是项目中的Bundle ID(反正这样是最保险的)
还有几个App server,建议就选择一下推送Push Notifications,至于为什么我也不太清楚,选上肯定没错..

下面就是一路点击过去continue,registe,done,最后注册成功的id是这样的

1.2申请证书
这里呢需要一个mac系统的电脑,如果有苹果机那最好了,没有也没关系,可以用虚拟机安装一个呀。
这里抛一个虚拟机装mac系统的链接:从0到100安装,虚拟机装mac;
如果遇到报错,可以参照下面链接,找不到安装磁盘看这里:请选择要插入的磁盘 ;不可恢复错误报错看这里:不可恢复错误: (vcpu-0) ;锁定文件失败,打不开磁盘或快照所依赖的磁盘的解决方案:方案 ;
好了,现在我们有了苹果电脑,可以进行正式的申请工作了。
1.1.1 请求文件CertificateSigningRequest.certSigningRequest
在实用工具找到-钥匙串访问(KEY CHAIN),在证书助理中,选择"从证书颁发机构求证书",如下图:

在下图所示的界面,你的电子邮件地址:填你申请idp的电子邮件地址,常用名称,默认就好,CA空,选择存贮到磁盘,点击"继续":

选择保存的位置,比如选择桌面。下一步点击完成,你就可以看到你的桌面多了一个CertificateSigningRequest.certSigningRequest的证书请求文件。
注:CSR文件尽量每个证书都制作一次,将常用名称区分开来,因为该常用名称是证书中的密钥的名字。
1.1.2 制作描述文件Provisioning Profile
登陆到开发者中心,找到证书配置的版块,选择点击右上角的加号:

发布证书和开发者证书需要操作两次,分别创建,开发者证书用于真机调试,发布证书用于提交到AppStore。注意这两个文件的区分。

然后下一步,会提示上传CSR文件,也就是证书签名请求文件。前面申请的那个CertificateSigningRequest.certSigningRequest,

提交上去后就会生成一个cer证书,如图所示,有效期为一年。

下载下来是这样的,如图:

做到这一步还不够,我们最终的目标是一个后缀名是.mobileprovision的证书。
所以继续
找到Provisioning Profiles,然后点加号添加


按照需要选择证书类别,开发者证书或者提交应用商店的证书,然后continue就会出现让你选择AppId的界面。选择你刚创建的AppId

选好了点继续,然后会让你选一个certificates,这个大概就是开发者许可证书,就是那个后缀cer的,就选你刚创建的那个。

然后下一步填描述文件的名字,这个就因人而异没什么限制

填好名字就可以有一个描述文件了,下载即可,后缀名是.mobileprovision,下载下来就可以用。

1.1.3 私钥证书
这个是非常重要的证书,
这个呢,就是把之前下载的ios_distribution2.cer,或者(ios_development.cer),

然后双击添加文件到钥匙串

点击添加,既可以在钥匙串中看到啦

下一步就是导出.p12后缀的证书,右键你要打包的文件,然后点导出

存储的时候回提示你设一个密码,在hbuilder打包的时候也会有一个私钥密码,就是在这里设置的,

好了该填的都填好了,导出的文件就会出现在你的文稿里边

做到这一步,准备工作就做好了。下面就是利用hbuilder进行打包,选择使用自有证书,选择生成的对应文件,然后打包生成.ipa的文件。
二、上架
打包好了ipa文件就可以通过xcode上架了,我电脑装的是最新的mac系统,macOS sierra。为什么要强调这一点呢?因为最新的苹果系统要上架应用,就必须下载最新的xcode。要不然会报错的

2.1 在itunes中创建程序
登录ios开发者中心,找到并选择Itunes Connect(在account点进去登录后就能看到,或者在页面底部的Distribute下),选择我的app

点击左上角的+选择“新建App”,根据自己的app然后填写相应的信息即可,因为项目较多,就不一一讲解了,但是其中的注意事项会写到:

(1)选择语言的时候,简体中文是Simplified Chinese,不要再找Chinese了,找不到的~
(2)套装ID与SKU主要是app的唯一标识吧,我是用的项目中Bundle Identifier的内容,即com.company.projectname
2.1.1 图片上传尺寸要求:
(1)另外屏幕截图一定要按照尺寸哦,那边会有提示尺寸是多少,可以只上传一组5.5寸屏幕的,然后其他的都勾选用5.5寸显示即可。
(2)上传logo的尺寸也有要求,必须是1024*1024,而且不能有圆角
2.2 构建版本

这个构建版本就是上架一开始提到的,如果你是最新版本的系统就一定要下载最新的xcode
打开xcode,选择开发工具里边的Application Loader。

打开之后,双击 交付应用,把打包好的.ipa文件上传上去

成功之后,过个30分钟左右吧,就会在构建版本那边出现一个加号,然后就可以把需要上架的软件添加上去。
另外,审核信息的填写要按照标准

至于演示账号,我在提交的时候没有填写,不过还是建议填写一下,据说不填可能被拒。
都差不多了就可以保存,提交审核了,审核成功就可以在应用商店下载喽~

版本更新:
版本更新如果直接按照前面的步骤进行会报错
所以这边要做一些修改在mainfest.json里边修改版本号,这个按照自己需要填写

这个好像不是那么重要,重要的是在iTunes Connect中要再加一个版本,然后用xcode提交,就可以在构建版本里选择了

本文参照:
并结合hbuilder的云打包整理而成
感谢阅读,欢迎提出宝贵意见。
转自https://www.jianshu.com/p/665c1d67adde
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Hbuilder用自有证书打包 ios App上架AppStore流程的更多相关文章
- (转))iOS App上架AppStore 会遇到的坑
iOS App上架AppStore 会遇到的坑 前言:非原创 文章摘自:http://zhuanlan.zhihu.com/100000PM/20010725 相信大家一定非常「深恶痛疾」AppS ...
- 图文详解丨iOS App上架全流程及审核避坑指南
App Store作为苹果官方的应用商店,审核严格周期长一直让用户头疼不已,很多app都"死"在了审核这一关,那我们就要放弃iOS用户了吗?当然不是!本期我们从iOS app上架流 ...
- iOS app 上架的流程与注意点
这里整理了两个关于苹果应用商店上架方面的资料: 一个是app上架的流程,里面包含各个环节的截图,比较详细. 流程介绍链接 (提取码:52a4) 第二个是app上架的一些注意点,这里面主要说的是上架 ...
- iOS App上架AppStore 会遇到的坑
前言部分 前言:非原创 文章摘自:http://zhuanlan.zhihu.com/100000PM/20010725 相信大家一定非常「深恶痛疾」AppStore的一系列产品上架规则.每次产品上架 ...
- 【转】Xcode7.1环境下上架iOS App到AppStore 流程 -- 不错!!
原文网址:http://www.jianshu.com/p/a8bd16be122f 1.官网地址 Apple Developer 地址:https://developer.apple.com/mem ...
- Xcode7.1环境下上架iOS App到AppStore 流程 转
来自:http://www.cnblogs.com/ChinaKingKong/p/4957682.html 前言部分 之前App要上架遇到些问题到网上搜上架教程发现都是一些老的版本的教程 ,目前iT ...
- ios app 上架AppStore
一.证书的导出 1.1 前期工作 首先你需要有一个苹果的开发者帐号,一个Mac系统. 如果没有帐号可以在打开http://developer.apple.com/ ...
- Xcode7.1环境下上架iOS App到AppStore 流程③(Part 三)
前言部分 part三 部分主要讲解 Xcode关联绑定发布证书的配置.创建App信息.使用Application Loader上传.ipa文件到AppStore 一.Xcode配置发布证书信息 1)给 ...
- Xcode7.1环境下上架iOS App到AppStore 流程① (Part 一)
前言部分 之前App要上架遇到些问题到网上搜上架教程发现都是一些老的版本的教程 ,目前iTunesConnect 都已经迭代好几个版本了和之前的 界面风格还是有很大的差别的,后面自己折腾了好久才终于把 ...
随机推荐
- Flask框架入门
Flask-基本入门 简介 flask被称为微型框架,只提供了一个强健的核心,其他功能全部通过扩展库来实现:也就是说可以根据项目需要量身打造.他适合入门学习以及高手研究. 组成:WSGI.模板引擎(J ...
- Web Api 将DataTable装换成Excel,并通过文件流将其下载
不废话,直接上代码 前端代码 <input type="button" class="layui-btn" value="Test-GetFil ...
- IPhone中H5页面用on绑定click无效的解决方法
首先声明本人资质尚浅,本文只用于个人总结.如有错误,欢迎指正.共同提高. --------------------------------------------------------------- ...
- 系统模块 sys 函数的调用
系统模块 sys 运行时系统相关的信息 sys模块的数据 数据 描述 sys.path 模块搜索路径 path[0] 是当前脚本程序的路径名,否则为 '' sys.modules 已加载模块的字典 s ...
- mmap:内存映射文件
介绍 建立一个文件的内存映射将使用操作系统虚拟内存来直接访问文件系统上的数据,而不是使用常规的I/O函数访问数据. 内存映射通常可以提高I/O性能,因为使用内存映射时,不需要对每一个访问都建立一个单独 ...
- C和指针课后问答题答案翻译
第11章 动态内存分配 1.在你的系统中,你能够声明的静态数组最大长度能达到多少?使用动态内存分配,你最大能够获取的内存块有多大? 英文答案原文: This will vary from system ...
- 嵌入式Linux应用开发完全手册读书笔记——常用的命令
嵌入式开发中常用的命令 grep命令 用法:grep [option] PATTERN [FILE...] 例如: 在内核目录下查找包含"request_irq"字样的文件 gre ...
- linux运维面试前,先来检查这些基础知识忘了没?
知乎上有这样一个问题:一个新手面试 Linux 运维工作至少需要知道哪些知识?其中有一个答案对这一话题的解读非常深入,今天特别分享给大家. 一.什么是大型网站运维? 首先明确一下,全文所讲的”运维“是 ...
- Java反射的使用
反射的概述 1.Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法. 2.对于任意一个对象,都能调用它的任意一个方法和属性. 3.通过动态获取的信息以及动态调用对象的方法 ...
- 2018-2019 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2018) D. Delivery Delays (二分+最短路+DP)
题目链接:https://codeforc.es/gym/101933/problem/D 题意:地图上有 n 个位置和 m 条边,每条边连接 u.v 且有一个距离 w,一共有 k 个询问,每个询问表 ...