在Cordova 8中未生成签名的APK

时间:2018-08-18 14:56:07

标签: android cordova

我正在尝试构建签名的apk文件。我不知道为什么它没有产生。我过去在Stack Overflow的帮助下生成了已签名的apk。

这次我正在做同样的事情,但不确定为什么它不产生。

我已经创建了 ant.properties build.json 。我还创建了 properties 文件,并且正在使用cordova build android --release。所有这些文件都在Android目录中。

ant.properties

key.store=/Applications/mampstack-5.6.30-1/apache2/htdocs/testapp/Android/TestAppRelease.keystore
key.alias=TestApp
key.store.password=12345678
key.alias.password=12345678

Build.Json

{
    "android":{
        "release": {
            "keystore": "/Applications/mampstack-5.6.30-1/apache2/htdocs/testapp/Android/TestAppRelease.keystore",
            "storePassword": "12345678",
            "alias": "TestApp",
            "password" : "12345678",
            "keystoreType": ""
        }
    }
}

我使用的密钥库命令如下:

keytool -genkey -v -keystore TestAppRelease.keystore -alias TestApp -keyalg RSA -keysize 2048 -validity 10000

Cordova build android --release生成未签名的apk文件。

我还想念什么?

Cordova版本为8,而android minSdkVersion为25。我检查了多个问题并按照说明进行操作,但是问题仍然存在。

2 个答案:

答案 0 :(得分:0)

现在,您可以获取未签名的APK,并发出这两个命令来对APK进行签名。

$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore {name}.keystore {apk_name_unsigned}.apk {apk_alias}
$ zipalign -v 4 {apk_name_unsigned}.apk {apk_name_signed}.apk

答案 1 :(得分:0)

使用BouncyCastle密钥库提供程序...

"keystoreType": "BKS"

设置"keystoreType": ""时,应使用默认的密钥库提供程序。