我有一个Cordova项目,我正在尝试为Android构建。我正在使用Cordova 5.3.3和cordova-android 5.0.0。根据Cordova Android的文档发现here为了让cordova签署它产生的发布apk我需要传递给它的签名配置,包括密钥库密码和密钥密码。当我通过build.json(我通过--buildConfig属性传递给我的cordova构建命令)包含此配置时,一切都按预期工作。但是,由于build.json已经提交给Git,并且我希望密钥库和密钥密码不在那里供所有人阅读,我试图找到另一种方法来传递cordova这些密码。文档说明:
可以使用命令行参数指定这些参数 以上是构建或运行脚本。
这使我相信我可以运行以下构建命令来在命令行中传递密码,而不是将其包含在build.json中:
cordova build android --release --buildConfig cordova-config/build.json --password myPassword
然而,这失败并出现以下错误:
未知平台:myPassword
我是否误读了文档中的内容,或者这是我正在使用的cordova-android版本的问题?
答案 0 :(得分:3)
这是命令:
cordova build android --release --keystore=pathToKeystore --storePassword=kspassword --alias=aliasName --password=aliasPassword
但是有一个错误,它不起作用
如果您将项目更新到cordova android 5.1.0并将平台/ android / cordova / lib / build.js替换为this code它将起作用(它可能适用于cordova android 5.0.0,但没有't test)
另一个选项是不提交build.json,或者不设置密码,如果你没有在build.json上提供密码,你将被要求手动输入密码
答案 1 :(得分:3)
你错过了双击,应该是:
cordova build android --release --buildConfig cordova-config/build.json -- --password myPassword
请参阅https://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html#signing-an-app
注意:您应该使用double - 表示这些是 特定于平台的参数,例如: