Android - Cordova 版本代码问题
Android - Cordova version code issue
这很奇怪。
基本上,我决定从使用 trigger.io 切换到使用 cordova 来构建和编译我的应用程序(使用离子框架)。
如果我构建一个未签名且未对齐的应用程序,一切都很好,但对于生产,我必须签署并对齐 apk 才能将其上传到 Play 商店。
我已经正确地签署并对齐了 apk,但是当我尝试上传 apk 时,出现了这个错误:
Your APK version code needs to be greater than 1457108319
现在,我在这里阅读了几个关于堆栈溢出的答案,说我只需要在我的项目 config.xml 文件中添加这一行:
<widget id="com.***********" android-versionCode="1457108319" version="5.0.0"
但问题是,如果我有这行代码,那么 gradle 就会失败,我会得到这个错误:
Error: Error code 1 for command: cmd with args:
/s,/c,"c:\src\app-v5\platforms\android\gradlew cdvBuildRelease -b
c:\src\app-v5\platforms\android\build.gradle -Dorg.gradle.daemon=true
-Pandroid.useDeprecatedNdk=true"
但是,如果我将 versionCode 更改为 6 位代码而不是 10,我不会收到任何错误,但同样,我无法将其上传到商店,因为 versionCode 编号小于已发布的应用程序。
我该如何解决这个问题?我真的不知道该怎么办。
非常感谢
自从更新到最新的 Cordova CLI (6.3.1) 和最新的 android cordova 平台 (5.2.2) 后,我遇到了同样的问题。
我的旧版本有以下内容:
版本号:69000
来自 config.xml 文件:
我的新买的:
版本号:7000
来自 config.xml 文件:
所以当我将签名的 APK 上传到 PlayStore 时,我遇到了与您相同的错误:
问题是 7000 小于 69000
问题来自 gradle 脚本(在 platforms/android/build.gradle 中)据我所知,该脚本根据他在您的 config.xml 中找到的内容生成版本代码。
看起来它在某处缺少一些 100 的乘法:
到目前为止,可以做的是:
1: 而不是使用 0.70 作为版本号使用 0.700
2:在config.xml文件中指定versionCode:
这两种情况都对我有用。
希望对您有所帮助。
我真的解决了这个问题。我必须将以下内容添加到我的 config.xml 文件中(在 <widget>, right after version)
:
android-versionCode="{this needs to be replaced, in my case, by the
current timestamp "
缺点是我现在必须记住每次都输入新的时间戳。
我会在某个时候编写某种脚本来为我做这件事。
希望这对某人有所帮助
这很奇怪。
基本上,我决定从使用 trigger.io 切换到使用 cordova 来构建和编译我的应用程序(使用离子框架)。
如果我构建一个未签名且未对齐的应用程序,一切都很好,但对于生产,我必须签署并对齐 apk 才能将其上传到 Play 商店。
我已经正确地签署并对齐了 apk,但是当我尝试上传 apk 时,出现了这个错误:
Your APK version code needs to be greater than 1457108319
现在,我在这里阅读了几个关于堆栈溢出的答案,说我只需要在我的项目 config.xml 文件中添加这一行:
<widget id="com.***********" android-versionCode="1457108319" version="5.0.0"
但问题是,如果我有这行代码,那么 gradle 就会失败,我会得到这个错误:
Error: Error code 1 for command: cmd with args: /s,/c,"c:\src\app-v5\platforms\android\gradlew cdvBuildRelease -b c:\src\app-v5\platforms\android\build.gradle -Dorg.gradle.daemon=true -Pandroid.useDeprecatedNdk=true"
但是,如果我将 versionCode 更改为 6 位代码而不是 10,我不会收到任何错误,但同样,我无法将其上传到商店,因为 versionCode 编号小于已发布的应用程序。
我该如何解决这个问题?我真的不知道该怎么办。
非常感谢
自从更新到最新的 Cordova CLI (6.3.1) 和最新的 android cordova 平台 (5.2.2) 后,我遇到了同样的问题。
我的旧版本有以下内容: 版本号:69000 来自 config.xml 文件:
我的新买的: 版本号:7000 来自 config.xml 文件:
所以当我将签名的 APK 上传到 PlayStore 时,我遇到了与您相同的错误:
问题是 7000 小于 69000
问题来自 gradle 脚本(在 platforms/android/build.gradle 中)据我所知,该脚本根据他在您的 config.xml 中找到的内容生成版本代码。
看起来它在某处缺少一些 100 的乘法:
到目前为止,可以做的是: 1: 而不是使用 0.70 作为版本号使用 0.700 2:在config.xml文件中指定versionCode:
这两种情况都对我有用。
希望对您有所帮助。
我真的解决了这个问题。我必须将以下内容添加到我的 config.xml 文件中(在 <widget>, right after version)
:
android-versionCode="{this needs to be replaced, in my case, by the current timestamp "
缺点是我现在必须记住每次都输入新的时间戳。
我会在某个时候编写某种脚本来为我做这件事。
希望这对某人有所帮助