我做了一个名为示例应用程序checkStatus.现在我想创建一个签名的APK文件.所以我可以将它安装在不同的设备上进行测试.
为此,我用Google搜索并找到了这个文档.
根据文档,我切换到我的项目目录并运行以下命令:
keytool -genkey -v -keystore key-name.keystore -alias alias-name -keyalg RSA -keysize 2048 -validity 10000
Run Code Online (Sandbox Code Playgroud)
之后我跑上面的命令,我得到了一个文件名为key-name.keystore在projectRoot/key-name.keystore.
然后我将该文件复制粘贴到projectRoot/platforms/android/key-name.keystore.
之后,我创建了一个名为ant.properties并保存的文件projectRoot/platforms/android.
我在文件中写了以下代码:
key.store=projectRoot/key-name.keystore
key.alias=myApp
Run Code Online (Sandbox Code Playgroud)
之后,我运行以下命令来发布
Cordova builds android --release
Run Code Online (Sandbox Code Playgroud)
它抛出以下错误:
/home/projectRoot/platforms/android/cordova/node_modules/q/q.js:126
throw e;
^
Error code 1 for command: ant with args: release,-f,/home/projectRoot/platforms/android/build.xml,-Dout.dir=ant-build,-Dgen.absolute.dir=ant-gen
Error: /home/projectRoot/platforms/android/cordova/build: Command failed with exit code 8
at ChildProcess.whenDone (/usr/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:753:16)
at Process.ChildProcess._handle.onexit (child_process.js:820:5)
Run Code Online (Sandbox Code Playgroud)
所以这一次,我修改key.store了ant.properties文件中的值,如下所示. …
这是一个普遍的问题,但特别是我对Android的使用感兴趣.什么是密钥库文件,它用于什么?
多个Android应用程序可以使用相同的密钥库来签署他们的应用程序("签署".apk究竟是什么意思?),这有什么影响(如果有的话)?