hbuilderx打正式包所需的私钥证书的创建方法
现在使用uniapp作为底层框架来开发app应用已经成为了很多公司的事实标准,而uniapp的开发工具hbuilderx云打包的时候,需要私钥证书和证书profile文件。
而且还需要将打包好的ipa文件上架到appstore.
ios开发需要有苹果开发者账号,假如你还没有苹果开发者账号,因为打包和上架都需要苹果开发者账号,你可以先申请一个苹果开发者账号,你可以参考这篇文章先申请一个苹果开发者账号:
https://www.yunedit.com/xueyuan/jx/applereg
下面,我们讲述下如何生成ios证书:
1、登录苹果开发者中心,进入苹果后台控制台,点击进入下图的Certificatres菜单,再点击右边的蓝色加号即可开始创建证书,证书的创建过程中,会要求你选择类型,假如你要创建的是打包证书,选择ios distribution ad hoc and app store类型,注意不要选择dev类型或者apple类型,因为那不是用于hbuilderx打包ios app的类型。

2、创建的时候它还会要求我们上传一个csr文件,如下图:

3、因为我们大部分开发uniapp都是用windows电脑,没有mac电脑,我们可以用香蕉云编来生成这个csr文件,这时候需要切换到香蕉云编:https://www.yunedit.com
进入香蕉云编控制台,点击新建csr文件,新建完后,把这个csr文件下载到你电脑本地。

5、返回到香蕉云编,进入控制台,上传刚才下载的cer文件,即可导出p12证书了,如下图:

通过上面的步骤,p12证书已经创建完毕。
下面,我们再继续教会大家创建profile描述文件。
1、登录苹果开发者中心,进入identifiers菜单,这个菜单是创建appId的,假如你还没有创建appId,则点击蓝色加号创建appId,假如已经创建,你可以跳过此步骤,注意,这个appId需要填写跟你在开发工具打包的时候填写的包名一致。

包名的格式大概如下:
|
1
|
com.packageName.myTestApp |
2、如下图,点击profiles,开始创建profile,创建的时候,它会要求我们选择类型,选择app store类型即可,假如是想创建真机测试的profile,则看第四步。创建的过程中它还要求我们选择appId,选择刚才创建的appId即可,然后还会要我们选择cer证书,注意假如你有多个cer证书,别选错了,选错的打包的时候会提示p12证书和profile不匹配。

3、假如你要创建的是真机测试的profile,则需要看此步,否则可以跳过此步骤。假如要创建真机测试类型,创建profile的时候选择ad hoc类型即可,然后创建的过程中它还会要我们填写所有测试设备的udid,假如你还不知道测试设备的udid,你可以使用香蕉云编右上角提供的工具来获取测试设备的udid.
好了,通过上面的步骤,你已经生成了p12证书,和证书profile文件了,你已经可以打包出ios应用,打包出ipa文件。
hbuilderx打正式包所需的私钥证书的创建方法的更多相关文章
- apicloud编译所需的ios证书的获取方法
在我们通过apicloud或hbuilderX这些工具打包ios应用的时候,需要一个ios证书. 那么我们如何生成这个ios证书呢?网上介绍的方法都是需要使用mac电脑,然后用mac电脑的钥匙串访问的 ...
- Json串与实体的相互转换 (不依赖于jar包 只需Eclipse环境即可)
Json串与实体的相互转换 (不依赖于jar包 只需Eclipse环境即可) 最近学习了javaWeb开发,用的是ssh框架里面自己整合了hibernate 和Struts2 和spring框架,其中 ...
- @vue/cli3+配置build命令构建测试包&正式包
上一篇博客介绍了vue-cli2.x配置build命令构建测试包和正式包,但现在前端开发vue项目大多数使用新版@vue/cli脚手架搭建vue项目(vue create project-name) ...
- vue-cli2.x配置build命令构建测试包&正式包
项目开发中常分为开发环境.测试环境.正式环境 通过vue-cli或者@vue/cli脚手架搭建的项目默认提供了开发环境和正式环境的配置.可通过js获取当前域名或其他信息来判断当前为测试环境还是正式环境 ...
- hbuilderX打包苹果证书的申请方法
现在uniapp越来越火,hbuilderX和apicloud这些工具使用html+js语言就可以开发强大的app,大大降低了app开发的技术门槛. hbuilderX或apicloud在打包ios应 ...
- ios私钥证书和profile文件的创建方法
做过ios开发的朋友们,对ios私钥证书和profile文件(描述文件)可能并不陌生,可以通过mac电脑来创建,但是,假如我们是用H5开发工具开发的,我们没有mac电脑怎么创建证书呢? 目前H5打包用 ...
- Android开发之查看应用包名package和入口activity名称的方法
使用android自动化测试工具monkeyrunner启动应用时,需要填写被测程序的包名和启动的Activity,以下有两种查看应用包名package和入口activity名称的方法: 方法一:使用 ...
- .net core 使用RSA获取私钥证书并签名
RSA在.NET Core的改动 以前我们使用RSA加密主要是使用RSACryptoServiceProvider这个类,在.NET Core中也有这个类,但是这个类并不支持跨平台,所以如果你是用这个 ...
- 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包
089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 五 Android Studio打包Eegret App (包名和签名,打出正式包)
一 定义包名 如下图,在AndroidManifest.xml中的package就是包名 二 创建keystore 选择Build->Generate Signed APK 选择create n ...
随机推荐
- UINavgationBar事件穿透
一.事件起因 最近在开发一版本的需求中,遇到一个问题,需要在一个ViewController的顶部,UINavgationBar的下面放置一个View,这个View需要能够正常收到事件 将我们的Vie ...
- NOIP模拟101(多校33)
T1 ladice 解题思路 我们把一个物品看做 \(A_i\) 与 \(B_i\) 之间的连边. 那么如果加入这条边之后联通块中有超过两个环或者两个环就是不合法的,也就是合法的状态只能是一个基环树和 ...
- python-一种去掉前后缀获取子串的方法
假设有一个字符串,其数据组成方式为:"mode_id1_str_id2",其中id1和id2为任意个数的数字,若存在mode,则id1必然也存在,否则都不存在:id2可有可没有. ...
- 使用优启通 制作 WIN PE U盘时报BOOT.WIM 有毒的解决方法
使用优启通 制作 WIN PE U盘时报BOOT.WIM 有毒的解决方法 1.打开"Windows Defender". 2.点击"病毒和威胁防护". 3.点击 ...
- EF 结合 PagingModel
PagingModel pagingModel using (var db = new PayLogDbContext()) { var data = db.Database.Query<Mer ...
- 「C++」简单模拟
这是一个公式: \[F_n=\dfrac{\left(\frac{1+\sqrt{5}}{2}\right)^n-\left(\frac{1-\sqrt{5}}{2}\right)^n}{\sqrt{ ...
- GIT 生成变更历史文件清单
脚本搞定git文件版本变化信息,解决部署种变更的审核和统计信息工作复杂问题 git diff --name-status --ignore-cr-at-eol --ignore-space-at-eo ...
- ssh_exchange_identification: Connection closed by remote host 错误解决方案
问题 今天登陆服务器时候,ssh 后返回 ssh_exchange_identification: Connection closed by remote host 错误,重试了几次,会有一定概率失败 ...
- 【译】VisualStudio.Extensibility 17.10:用 Diagnostics Explorer 调试您的扩展
想象一下,创建的扩展比以往任何时候都运行得更快.更流畅!如果您最近还没有跟上,我们一直在努力改进 VisualStudio. Extensibility SDK.VisualStudio. Exten ...
- ABC195E
其实我们发现很多博弈论的动态规划都是从后往前的,比如过河卒和本题. 这是因为从某种角度上来说这些动态规划有后效性而无前效性. 所以设计状态 \(dp_{i,j}\) 表示第 \(i\) 次操作 \(T ...