【关键字】
编译 / 9568329 / HSP / hvigor
【问题描述】
项目需要新建demo工程,用于测试封装HSP包并引用。新建demo工程之后引入了hvigor 4.1.1,并自动进行了签名,用于在真机调试。
但是编译报错,报错内容为:
Install Failed: error: failed to install bundle.
code:9568329error: verify signature failed.
报错如下图所示。
经过测试,纯demo可以正常真机调试,但如果引入别的HSP模块打包的 .tgz文件,就会出现 9568329 报错。demo代码已经包含了该 .tgz 文件,在dependencies目录中。
【解决方案】
工程和HSP的bundlename存在不一致情况,需保持一致使用。
03-26 08:43:38.275 1274-9045 C01120/BundleMgrService foundation E [nodict][bundle_install_checker.cpp(CheckBundleName):649] CheckBundleName failed provisionBundleName:com.example.bob_demo, bundleName:com.bob.shoujiyinhang
03-26 08:43:38.275 1274-9045 C01120/BundleMgrService foundation E [nodict][bundle_install_checker.cpp(ParseHapFiles):371] check provision bundleName failed
因为HSP不支持跨应用使用,HSP使用时需和工程bundlename保持一致,一般HSP是在本工程下使用不存在该问题,将HSP打成tgz包上传到私仓再使用也只是当做二方库使用,而不能像HAR一样可以当做三方库使用,所以必须保持一致。