应用使用发布证书时,签名信息返回空值 HarmonyOS 鸿蒙Next
应用使用发布证书时,签名信息返回空值 HarmonyOS 鸿蒙Next 使用以下代码获取应用的签名信息:
let bundleInfo = bundleManager.getBundleInfoForSelfSync(bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_SIGNATURE_INFO);
当添加的证书是调试证书时,能够获取到bundleInfo.signatureInfo.fingerprint
数据,但是我将证书替换成发布证书时,bundleInfo.signatureInfo.fingerprint
是空的,bundleInfo.signatureInfo.appId
有值,但是和调试证书获取到的数据不一样,调试证书获取的appId
是bundleName_一串字符
。
请问如何在使用发布证书时,获取到正确的签名信息?
我们应用有对签名进行校验的机制,如果无法获取签名信息,就没办法进行校验,所有的功能都无法使用。
更多关于应用使用发布证书时,签名信息返回空值 HarmonyOS 鸿蒙Next的实战教程也可以访问 https://www.itying.com/category-93-b0.html
发布证书的应用是不能在本地启动或者运行的,在真机上无法运行,在模拟器上虽然能运行,但是获取到的签名也是空的;您可以直接提交发布上架,在应用发布后,通过这个接口bundleInfo.signatureInfo.fingerprint
,获取到签名信息。
更多关于应用使用发布证书时,签名信息返回空值 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
提个工单问下
在HarmonyOS(鸿蒙Next)中,当应用使用发布证书进行签名时,签名信息返回空值的问题可能与以下几个原因有关:
-
证书配置问题:确保在项目的
build.gradle
文件中正确配置了发布证书的路径、别名和密码。如果配置不正确,可能导致签名信息无法正确读取。 -
证书文件损坏:检查发布证书文件是否完整且未损坏。如果证书文件损坏,签名信息将无法读取。
-
签名工具版本问题:确保使用的签名工具与HarmonyOS的版本兼容。如果签名工具版本过旧或过新,可能导致签名信息返回空值。
-
签名流程问题:在签名过程中,确保所有步骤都正确执行。例如,使用正确的命令和参数进行签名操作。
-
系统缓存问题:有时系统缓存可能导致签名信息无法正确返回。可以尝试清理缓存后重新签名。
-
权限问题:检查是否有足够的权限访问证书文件和执行签名操作。权限不足可能导致签名信息返回空值。
如果以上问题都排除后,签名信息仍然返回空值,可能需要进一步检查项目的构建配置和日志信息,以确定具体原因。