通过命令行

时间:2016-01-25 10:00:44

标签: android cordova

我有一个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版本的问题?

2 个答案:

答案 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 - 表示这些是   特定于平台的参数,例如: