在Google Play开发者控制台中如何解决“APK的版本号需要高于2”?
将我的Phonegap应用上传到Google Play开发者控制台时出现此错误:
APK的版本代码需要高于2。
我怎样才能解决这个问题?
如果您直接使用Gradle,或通过Android Studio间接使用:
我通过编辑build.gradle
文件中的版本号来修复它! 在android.manifest文件底部有一个小横幅,表示“这些更改正在被build.gradle文件覆盖”。
请参阅Android Studio的附件,它应该有所帮助。
通过在AndroidManifest.xml中更改versionCode将版本代码增加到3:
<android xmlns:android="http://schemas.android.com/apk/res/android"> <tool-api-level>10</tool-api-level> <manifest android:versionCode="3" android:versionName="0.1.1" android:installLocation="preferExternal"/> <uses-sdk android:maxSdkVersion="10" android:minSdkVersion="7" android:targetSdkVersion="10"/> </android>
使用aapt
来validation您的APK版本:
aapt dump badging myapp.apk
它会告诉你在AndroidManifest.xml
增加versionCode
,例如
<manifest android:versionCode="3">
有相同的问题,并通过更改Module: app
中的build.gradle
文件中的下列值来解决它
defaultConfig { applicationId //app package goes here minSdkVersion 10 targetSdkVersion 21 **versionCode 2 versionName "1.1"** signingConfig //name of keystore goes here }
这是Android Studio跟踪每个应用的版本的方式。
或者,对于noobs,您可以通过点击应用程序的设置并导航到Flavors选项卡来访问这些设置。 在那里你可以修改某些设置,例如versionCode和versionName。
希望这可以帮助 :)
在准备将应用程序部署到APK时,在JDeveloper中,转至应用程序 – >部署 – >新部署configuration文件。 将configuration文件types设置为适用于Android的ADF Mobile,select一个名称并单击确定。 在下一个窗口中selectAndroid选项并更改版本代码。 这就是Google Play所不喜欢的(因为您已经拥有了相同版本的应用程序)。 这就是我解决这个问题的方法。
我有这个问题一段时间,它难倒了我。 我尝试重新导入项目。 从Eclipse将项目带入Android Studio。 一切。 而我发现的工作是,你必须增加1版本的代码。 您不必更改版本名称。 在导出apk文件之前 确保你至less要build立一个项目。 所以新版本代码被实现了。
我发现如果您使用的是Android Studio,则需要更新build.gradle
文件中的版本代码。 例如:
defaultConfig { applicationId "app.myapp" minSdkVersion 14 targetSdkVersion 20 versionCode 2 versionName "1.0.0" }
…
有同样的问题。 更改版本没有帮助。 对于Android构build,您可以将versionCode
添加到您的config.xml
并指定版本。
xmlns:gap = "http://phonegap.com/ns/1.0" id = "xxx.xxxxxx" versionCode = "415" version = "1.0.11">
检查http://docs.build.phonegap.com/en_US/3.1.0/configuring_basics.md.html#The%20Basics
我想你已经有一个版本2上传到你的开发控制台。 只需将版本代码(注意:不是版本名称!)增加到3,重新构buildAPK就可以了。
在Android Studio中,我只能通过更改应用程序文件中的versionCode来获得此function。
android { compileSdkVersion 19 buildToolsVersion '19.1.0' defaultConfig { applicationId 'xxxxxxxxxxxxxxx' minSdkVersion 14 targetSdkVersion 19 versionCode 3 versionName '1.1' } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } productFlavors { } }
android和你的用户需要跟踪所有的更新,所以你需要通过更新versionCode和versionName来提及版本
以下是如何解决这个问题:
在先
defaultConfig { applicationId "com.example.random.projectname" minSdkVersion 15 targetSdkVersion 24 versionCode 1 versionName "1.0" }
现在
defaultConfig { applicationId "com.example.random.projectname" minSdkVersion 15 targetSdkVersion 24 versionCode 2 versionName "1.0.1" }
记得
- versionName是显示在应用程序用户的长描述底部的内容
- 虽然versionCode是针对开发者和谷歌的需要,并且必须每增加一个新版本名称,即使将versionName从v1.0.5更改为v1.0.6
appt dump badging myapp.apk
这个命令在检查构build的apk版本中起作用。 但是要和老把手解决这个问题,即使我增加了版本。 尝试清理工作区并重新构build。
我的解决scheme是编辑config.xml并更改“版本”属性。
我试着编辑我的AndroidManifest.xml(我可以find每个版本),并更改versionCode和versionName值。 一些AndroidManifest.xml文件被原始值覆盖,有些未被覆盖。 无论如何,apk版本仍然是'1'。
我多次查看config.xml,但versionCode和versionName中都不存在。 我终于决定改变config.xml中的'版本'值,重build,我的apk现在有了新的,正确的版本号。
在config.xml中:
旧“版本”属性: "version=0.0.1"
新版本属性: "version=0.0.2"
应该指出,我不使用Eclipse或Android Studio …只是一个文本编辑器,并运行手动构build。 现在当我跑步
aapt转储徽章[apk名]
我看到更新的versionCode和versionName …具体来说,我看到这个:
versionCode='2' versionName='0.0.2'
…我现在可以再次将我的apk成功上传到Play商店。
简单的方法来解决它是点击生成>编辑味道… 在这里input图片描述
更改版本代码和版本名称
在这里input图像说明
点击确定并完成
对于我的Cordova构build的应用程序,Gradle文件没有静态代码。 它是这样使用Android Manifest挑选的 –
defaultConfig { versionCode cdvVersionCode ?: Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode") + "0") applicationId privateHelpers.extractStringFromManifest("package") if (cdvMinSdkVersion != null) { minSdkVersion cdvMinSdkVersion }
}
我试图更改清单文件中的版本代码,但没有运气。
这并不是一件好事,但是我不急于做到这一点 –
defaultConfig { versionCode cdvVersionCode ?: (Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode") + "0") + 2) applicationId privateHelpers.extractStringFromManifest("package") if (cdvMinSdkVersion != null) { minSdkVersion cdvMinSdkVersion }
}
注意:对于Cordova构build的应用程序,您需要在Gradle Scripts> File中修改 – “build.gradle(Module:android)”