XHbuilder 需要的 ipa 签名,超详细的教程,你不看吃亏的是自己!
今天使用 hbuilder 运行到 ios 真机的时候,突然发现还需要 ipa 签名,这是什么东东呢?
1、IPA 签名是什么?
因苹果公司禁止企业证书用于非企业内部开发者。所以开发者无法再使用DCloud的企业证书签名的标准运行基座。
运行标准基座到iOS真机设备前,需要使用开发者的证书对基座签名后才能运行。
生成 ipa 签名有两种方式:
(1) 官网申请证书
在 apple 官网注册 appleID ,申请开发者证书,然后在iOS标准基座签名窗口,输入Bundle ID、证书私钥密码、证书profile文件、私钥证书P12文件,即可完成签名。
(2) 使用爱思助手生成
在爱思助手内,导入 ipa 文件 + appleID 生成签名文件,导入 hbuilder 安装目录下就ok了。
2、如何生成 IPA ?
apple 官网申请证书有些麻烦,appleID 账号登录成功之后,还需要填写注册时设置的安全校验问题,注册这么久早都忘喽,重新注册个邮箱注册 appleID 发现还不支持,头大的不行了,干脆使用爱思助手算了。
帮大家整理一个快捷生成 ipa 的详细步骤:
(1) 下载一个爱思助手,并且将手机与电脑连接成功。打开爱思助手,选择工具箱,找到 IPA 签名工具。
(2) 添加 ipa 文件,找到 XHbuilder 的安装目录,选择 plugins 文件夹,再找 launcher 文件夹,选择 base 文件夹,选择 iPhone_base.ipa 文件。
具体目录:HBuilderX\plugins\launcher\base\iPhone_base.ipa
(3) 使用 Apple ID 签名,通过账号密码登录,手机连接电脑自动识别设备Id。
(4) 选中 ipa 文件和 appleID 生成签名文件
(5) 签名成功后,找到签名后的ipa文件,并命名为iPhone_base_signed.ipa,然后将其拷贝到HBuilderX安装目录\plugins\launcher\base
(6) 完成上述操作之后,签名就生成完成,可以在 XHbuilder 运行项目到 ios 手机了。
3、运行到真机,好了吗 ?
此时点击运行-》运行到手机或者模拟器-》运行到 IOS app基座:
此时链接手机就可以正常开始编译,运行到手机上,运行半天之后提示安装调试基座失败
错误信息提示:
打开文件服务失败,请尝试拔掉数据线后重新连接手机,或重启手机再试(如果是IOS15.1以上的设备,请确认基座版本号为3.3.2及以上)
07:30:33.442 标准基座真机运行不支持iPhone 5S/iPad mini2以下设备,请使用自定义基座进行真机运行。
此时我们需要在手机端安装 Hbuilder 调试基座,
点击打开已签名的 ipa 位置,选中生成的 iPhone_base.ipa 文件双机,就会出现 Hbuilder 安装确认提示:
点击立即安装,就会进入手机安装Hbuilder 进度提示,如下图:
安装完成之后我们需要最后一步就可以正常运行到手机了。打开手机设置-》通用-》设备管理-》选择开发者APP->信任Hbuilder。
至此,就可以正常运行到手机上了。小编第一次看见这些的时候看着官方文档实操了一上午,最后以失败而告终,所以帮大家整理了一下,希望不要像我一样从入门到放弃。
4、生成 IPA 常见问题 ?
小编写的好简单啊,看着教程都是这么简单,但是实操的时候,发现会经常报各种错误,让人好心累,所以为大家整理下常见的问题。
(1) 提示,证书申请失败!
(将鼠标移动至红色字体的位置。后面会出现一串这样的英文提示。)
get +XcodeToken+err+SRP_Setp1+err:hsc=200+ec=-20101+au=+em=Your+account+information+was+entered+incorrectly。
这种情况说明 appleID 账户有问题,我们先重新登录以下 appleID 确认好密码之后重新添加 appleID 账户再生成。
(2)账户密码错误提示
get +XcodeToken+err+GetGsldmsToken+err:hsc=401+ec=-22406+au=+em=Your+Apple+ID+or+password+is+incorrect.
提示你账户或密码不正确,请确认您的 apple Id 账户信息。
(3)提示签名失败,错误码44或 45 。
因 ipa 包构架问题导致无法进行签名,可以尝试下载未被改动过的原始iPA包重新签名。
(4) get anisettedata failed.
这个有可能是电脑网络的原因:公司网络或校园网络。解决方法是:更换个人家庭网络或手机热点。通常会有网络提示帮您自动切换。
(5) 启动证书申请进程失败。
这个是杀毒软件拦截了证书申请的进程,重启电脑退出杀毒软件再重试。
(6) 出现这类证书申请失败的提示:get teams err Teams =0.
原因是当前账号获取teams出错,更换Apple ID账号再去签名即可。
(7) 出现这类证书申请失败的提示:get XcodeToken err GetGsldmsToken err:hsc=434 ec=-22421 au=em=This action could not be completed. Try again.
或者这种提示:get +teams+err+1100+Your+session+has+expired.+Please+log+in.
然后这种提示:get +XcodeToken+err+RequestValidate+err;Http+Get+validate+vd+len;0+err;<nil>.
还有这种提示:
这四种情况的解决办法是一样的,按照这个文件路径 :C:\ProgramData\i4\i4tools\ipasign,删除adi和cnf两个文件夹即可。
(8) 这类证书申请失败的提示:get +XcodeToken+err+MakeCPD+err;anisette+null+err;The+operation+couldn\U2019t+completed.+(AKAnisetteError+error+-8004.) .
这是电脑设置了代理服务器,关闭即可。
(9) 签名数量已达上限。
根据苹果的规定,每个 Apple ID 在 7 天内只能为 10 个安装包进行签名,请更换 Apple ID 或 7 天后再试。
出现以上报错,首先检查 iTunes 是否为最新版本,确保为最新版后如果继续报错,请更换其他能正常登录使用的 Apple ID 来完成签名。
(10) Apple ID 停用了。
证书申请失败提示:
get XcodeToken err SRP_ Setp1 err:hsc=409 ec= -20209 au=iForgotAppleldLocked em=This Apple ID has been locked for security reasons. Visit iForgot to reset your account (https://iforgot.apple.com).
这个是苹果ID停用了,去苹果官网登录Apple ID,等弹窗提醒再去修改Apple ID 密码即可。(不要去主动修改Apple ID密码,不然无效。)
5、 IPA 使用注意事项有哪些?
(1)ipa 生成签名安装应用的有效期为 7天,安装之后的使用时间取决于证书的有效期,如果在有效期内被吊销或者过了有效期,软件将无法再次打开。
(2)使用 apple id 生成的 ipa 文件不可以直接发给别人使用,因为生成的 ipa 是个 apple id 签名的应用设备标识绑定着,所以别人使用时签名无效。
(3)XHbuilder 升级之后,以前生成的 ipa 还可以使用吗?不可以。
XHbuilder 需要的 ipa 签名,超详细的教程,你不看吃亏的是自己!的更多相关文章
- ROS2的安装与使用(超详细图文教程)
ROS2的安装与使用(超详细图文教程) 如果前面的虚拟机以及Ubuntu22.04镜像都安装好了,根据目录直接跳到ROS2的安装. 资料参考于:古月居 VMware虚拟机的安装 安装地址: 对于不了解 ...
- VMware虚拟机下安装CentOS7.0超详细图文教程
1.本文说明: 官方的第一个文本档案.也就是0_README.txt,大概意思是这样(渣翻译,但是大概意思还是有的). CentOS-7.0-1406-x86_64-DVD.iso:这个镜像(DVD ...
- 超详细实战教程丨多场景解析如何迁移Rancher Server
本文转自Rancher Labs 作者介绍 王海龙,Rancher中国社区技术经理,负责Rancher中国技术社区的维护和运营.拥有6年的云计算领域经验,经历了OpenStack到Kubernetes ...
- MySql5.6 Window超详细安装教程
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 目录 一.安装包准备二.开始安装三.验证安装四.客户端工具 一.安装包准备 1.下载MySql ...
- MySql5.6Window超详细安装教程(msi 格式的安装)
转自:红黑联盟 http://www.2cto.com/database/201506/409821.html 一.安装包准备 1.下载MySql5.6 http://www.mysql.com/ ...
- 在Ubuntu下进行XMR Monero(门罗币)挖矿的超详细图文教程
大家都知道,最近挖矿什么的非常流行,于是我也在网上看了一些大神写的教程,以及跟一些大神请教过如何挖矿,但是网上的教程都感觉写得不够详细,于是今天我这里整理一个教程,希望能够帮到想要挖矿的朋友. 首先, ...
- 超详细,新手都能看懂 !使用SpringBoot+Dubbo 搭建一个简单的分布式服务
来自:JavaGuide Github 地址:https://github.com/Snailclimb/springboot-integration-examples 目录: 使用 SpringBo ...
- 【建议收藏】Redis超详细入门教程大杂烩
写在前边 Redis入门的整合篇.本篇也算是把2021年redis留下来的坑填上去,重新整合了一翻,点击这里,回顾我的2020与2021~一名大二后台练习生 NoSQL NoSQL(NoSQL = N ...
- 最新MATLAB R2021b超详细安装教程(附完整安装文件)
摘要:本文详细介绍Matlab R2021b的安装步骤,为方便安装这里提供了完整安装文件的百度网盘下载链接供大家使用.从文件下载到证书安装本文都给出了每个步骤的截图,按照图示进行即可轻松完成安装使用. ...
- 最新MATLAB R2020b超详细安装教程(附完整安装文件)
摘要:本文详细介绍Matlab R2020b的安装步骤,为方便安装这里提供了完整安装文件的百度网盘下载链接供大家使用.从文件下载到证书安装本文都给出了每个步骤的截图,按照图示进行即可轻松完成安装使用. ...
随机推荐
- 听说你想用免费的FOFA?(第二弹)
听说你想用免费的FOFA?(第二弹) 上回说到 听说你想用免费的FOFA? 第二弹 记得那是一个阳光正好的午后,我刚更新了导出文件类型,到了晚上就发现fofa hack下载不了了,看了一下最新的规则, ...
- 逍遥自在学C语言 | 位运算符&的高级用法
前言 在上一篇文章中,我们介绍了&运算符的基础用法,本篇文章,我们将介绍& 运算符的一些高级用法. 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位 ...
- windows如何拉取一个文件夹下的所有文件名
问题描述:遇到一个问题,是说一个文件夹下的文件太多了,如何去批量的拉去文件名呢,今天用CMD+DIR的方式拉取 1.文件目录也很深,就从文件导航栏进入CMD窗口 2.在当前目录中输入cmd,然后回车 ...
- Semantic Kernel 入门系列:🍋Connector连接器
当我们使用Native Function的时候,除了处理一些基本的逻辑操作之外,更多的还是需要进行外部数据源和服务的对接,要么是获取相关的数据,要么是保存输出结果.这一过程在Semantic Kern ...
- Go/Python 基于gRPC传输图片
python程序作为服务端,Go程序作为客户端,基于gPRC进行通信 客户端 定义proto文件: syntax = "proto3"; option go_package = & ...
- 执行sql报lock wait timeout exceeded; try restarting transaction
mysql查询时候报错: Lock wait timeout exceeded; try restarting transaction 译文:锁等待超时;试着重新启动事务 被锁了,需要解锁. 1.in ...
- 简单实用Ecplise常用快捷键
简单实用Eclipse常用快捷键 用了Eclipse两年了,简单总结下目前我经常使用的快捷键!!! 1. Ctrl+Shift+R 功能:打开资源,这组快捷键可以让你打开你的工程中的任何一个文件 操作 ...
- 深度学习-06(PaddlePaddle体系结构与基本概念[Tensor、Layer、Program、Variable、Executor、Place]线性回归、波士顿房价预测)
文章目录 深度学习-06(PaddlePaddle基础) paddlePaddle概述 PaddlePaddle简介 什么是PaddlePaddle 为什么学习PaddlePaddle PaddleP ...
- Spring Security 报:Encoded password does not look like BCrypt
SpringBoot 集成 Security 时,报 Encoded password does not look like BCrypt 原因:SecurityConfig 必须 Bean 的形式实 ...
- iOS中的3种定时器
在iOS中有3种常见的定时器,它们会根据不同的场景进行选择使用. 1.DispatchSourceTimer: 基于GCD实现. 2.CADisplayLink:基于屏幕刷新实现. 3.Timer:基 ...