前言

公司用的 App iOS 端出现些问题,需要真机调试查看。其他同事手机都有在使用,刚好之前我有一个 iPhone XS Max 闲置着没有使用。

本来是带了两个苹果线给负责这事的同事的,但两根线一根没用,另一根能充电但USB线连接后,HBuilder 选择运行到 iOS 基座,设备不能识别出来。

想着明天再回去找找苹果数据线,突然看到最近买的妙控鼠标有一根附带的线,type-c 转苹果口,插到我自己电脑上可以识别。于是就转移代码在我的 Mac 上运行 HBuiler 进行调试。

问题

一开始默认选择的是,使用标准基座运行。点击 “使用Apple证书签名” 分别填写 Bundle ID、证书私钥密码,以及私钥证书(p12)和证书 profile 文件。

按照提示按照所需要的云打包之类的插件,然后编译成功,然后到设备按转基座时报错:请查看是否设备未加入到证书列表或者确认证书类型是否匹配

百度了一些,还真找到解决方法了:hbuilder 调试 运行到IOS真机提示 错误:请查看是否设备未加入到证书列表或者确认

按照教程里的说法是,我的设备 UDID(也有说 UUID,差不多意思) 没有添加到苹果开发者后台的设备列表中。

获取 UDID:苹果手机连接到 Mac 电脑,访达中点击挂载好的 iPhone,点击 iPhone 下面一行的手机型号一栏,会切换显示为序列号、型号、产品类型,再点击一次就会显示 UDID。右键复制即可。

Mac 下获取苹果手机 UDID

按照教程里的使用苹果开发者账号登录 https://developer.apple.com/找到设备列表 Devices,添加设备名称+UDID,之后还需要更新原来的 profile 文件。在 Profiles 中找到当前使用的 profile 文件,列表上点击那一项进入到详情。在最下面的设备列表勾选新添加的调试设备,然后保存。之后下载新的 profile 替换原来的 Apple 证书签名里的 profile 文件。

再次运行,OK!

之后又调试过程中遇到一个报错:[JS Framework] 当前运行的基座不包含原生插件[xx],请在manifest中配置

听取了网上的建议,先使用 App 打包(发行,原声App-云打包),之后运行再选择使用自定义基座运行。自定义基座运行位置里会有刚才打包的 iOS_debug.ipa 文件。

再运行,OK!