编译了一个用beta签名的.app文件发给运营用于上线,该文件能成功上传并且华为后台校验通过。
今天点出来个bug,修了,再次编译了用beta签名的.app文件用于上线,该文件上传后未通过华为后台校验,错误码993。多次编译上传都是993。
这个问题也容易解决,我编译了release签名的.app文件用于上线,该文件能成功上传并且华为后台校验通过。
现在我要确认:昨天发给运营的上传并校验通过的文件,是用beta签名的,还是用release签名的。
所以我想到了SHA256校验:我用昨天beta签名编译时commitID节点的代码,分别用beta签名和release签名编译.app文件,再加上昨天发给运营的用beta签名的.app文件,比较一下它们的SHA256的值应该就可以了。
但是,这3个文件的SHA256值都不一致。
期望有2个文件SHA256值是一致的,要么是昨天的文件和今天的beta签名的一致,要么是昨天的文件和今天的release签名的一致。
问题来了,我多次编译后发现:同一份代码、同一份签名文件,多次编译的产物.app文件,其SHA256校验码不一致,.hap文件的校验码也不一致。
如何解释?原理是什么?
本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。
p7b文件不变的情况下获取的finerprint值是一致的,在应用市场上架后,使用的p7b文件变化,会导致获取的finerprint不一致