我正在尝试将密钥库添加到Google Play应用签名中。
指南中提到
java -jar pepk.jar --keystore = foo.keystore --alias = foo --output = output.zip --encryptionkey = The_Hex_Which_Is_105_Char
[The_Hex_Which_Is_105_Char
是Google在说明中提供的105个字符的十六进制。
我必须删除多余的空格才能使其正常工作。
java -jar pepk.jar --keystore=my.keystore --alias=myAlias --output=output.zip --encryptionkey=The_Hex_Which_Is_105_Char
但是运行这个我得到一个错误:
Error: Unable to export or encrypt the private key
java.lang.IllegalArgumentException: Hex encoded byte array must have even length but instead has length: 105. Hex encoded string: The_Hex_Which_Is_105_Char
at com.google.wireless.android.vending.developer.signing.tools.extern.export.ExportEncryptedPrivateKeyTool.fromHex(ExportEncryptedPrivateKeyTool.java:225)
at com.google.wireless.android.vending.developer.signing.tools.extern.export.ExportEncryptedPrivateKeyTool.run(ExportEncryptedPrivateKeyTool.java:149)
at com.google.wireless.android.vending.developer.signing.tools.extern.export.ExportEncryptedPrivateKeyTool.main(ExportEncryptedPrivateKeyTool.java:110)
如何生成密钥?为什么Google会给我一个105字符的十六进制键,而pepk工具却无法使用?
有3个选项
我正在使用选项2,因为已经创建了密钥库。
我通过使用选项3中提供的加密密钥(136个字符)使它正常工作
java -jar pepk.jar --keystore = foo.keystore --alias = foo --output = output.zip --encryptionkey = KeyFromOption3WorksHere136CharactersLong