在构建和签署我的 apk 时,让 cordova 提示我输入 storePassword 和 build.json 文件中的密码字段的密码时遇到问题。我转向的解决方案是将它们输入到 build.json 文件中。
我的问题:在 build.json 中手动输入密码时是否存在任何安全问题(例如密码以某种方式包含在实际签名的 apk 中等)?
我的 cordova 项目的根目录中有 build.json,所以它会被自动检测到,我所要做的就是:
cordova build android --release
...这就是我选择这条路线的原因(它很管用)。我知道这看起来像是一个愚蠢的问题,但 Cordova 文档指出:
"For release signing, passwords can be excluded and the build system will issue a prompt asking for the password."
...这意味着出于某种原因不应将密码输入到 build.json 中以进行发布。
最佳答案
我认为主要原因是为了避免在 build.json
中以纯文本形式存储密码,而是在控制台中键入密码:
{
"android": {
"debug": {
"keystore": "../android.keystore",
"storePassword": "android",
"alias": "mykey1",
"password" : "password",
"keystoreType": ""
},
"release": {
"keystore": "../android.keystore",
"storePassword": "",
"alias": "mykey2",
"password" : "password",
"keystoreType": ""
}
}
}
或从环境变量中获取:
cordova 运行 android --release -- --keystore=../my-release-key.keystore --storePassword=%STORE_PASS% --alias=mykey2 --password=password
.
关于Cordova Build.json 密码安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40701767/