업로드 실패 이미 버전 코드 2 인 APK가 있으므로 다른 버전 코드를 사용해야합니다.


127

이 답변에 따르면 해결 방법 "APK의 버전 코드는 2보다 높아야합니다." Google Play의 개발자 콘솔에서? 방금 버전 코드를 2에서 3으로 변경했는데 빌드를 업로드하지 못했습니다.

APK를 업로드하기 전의 이전 매니페스트입니다.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="mypackage name"
    android:installLocation="auto"
    android:versionCode="28"
    android:versionName="1.0028" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />
        .....

여기 안드로이드 개발자 콘솔에 업로드해야하는 새 버전 코드가 있습니다. 내 menifest보기

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="mypackage name"
    android:installLocation="auto"
    android:versionCode="2"
    android:versionName="2.0001" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />
        ......

나는 문제가 무엇인지 모른다. 도움이 필요하세요? 여기에 이미지 설명 입력

답변:


125
android:versionCode="28"

이전 versionCode은 28이었습니다. 1에서 29까지 증가시켜야합니다.

android:versionCode="29"

아마도 이전 앱 버전은 1에서 28까지였습니다. versionCode 3으로 릴리스하면이 versionCode로 이미 릴리스 된 앱의 이전 버전과 충돌하게됩니다.


이 번호는 한 버전이 다른 버전보다 최신인지 여부를 확인하는 데만 사용되며 번호가 높을수록 최신 버전을 나타냅니다. 이 사용자에게 표시되는 버전 번호가 아닙니다
모하메드 AbdelraZek

혼란 스러울 수있는 다른 사용자를 위해 이것은 sdk 버전이 아니라 귀하의 앱 버전 코드입니다.
SHIKHAR SINGH

그 파일의 경로가 정확히 무엇인지 알려 주실 수 있습니까?
João Pimentel Ferreira

214

안드로이드 Studio를 사용하는 사람들을 위해 문제는 편집에 의해 해결 될 수 versionCodeversionNamebuild.gradle대신 AndroidManifest.xml.

예 :

defaultConfig {
    applicationId "com.my.packageId"
    minSdkVersion 15
    targetSdkVersion 22
    versionCode 2      <-- change this
    versionName "2.0"  <-- change this
}

3
build.gradle에서 AndroidManifest.xml을 읽을 수 있습니까? 값을 두 번 갖는 것은 의미가 없습니다.
MonoThreaded 2015

이것이 답입니다. 여기에 무슨 일이 생긴 것을 말해서는 버전을 덮어 있도록 Gradle을이 proyect를 구축 할 수있는 하나의 incharge는 점이다
jasmo2가

1
versionCode가 정수인지 확인하고 변경 후 동기화하십시오.
sk md

29

제 경우에는 간단한 문제입니다. 이전에 콘솔에 앱을 업로드 했으므로 일부 문제를 해결 한 후 다시 업로드 해 봅니다. 내가 할 일은 아티팩트 라이브러리에서 이전 APK를 삭제하는 것뿐입니다.


11
Google Play Console을 통해 버전을 업로드 한 후 게시하기 전에 삭제하고 다시 업로드했는데 OP 오류가 발생했습니다. 삭제했다고 생각했지만 여전히 아티팩트 라이브러리에 있습니다. 나는 거기에 업로드 할 수에서 ... 삭제
Scuzzlebutt

22

ionic framework을 사용하는 경우 config.xml 파일 로 이동 하여 "widget" 태그 에서 "version" 속성을 변경하십시오 . 버전 번호를 늘리십시오. 그런 다음 APK를 다시 빌드하고 서명하고 업로드하여 스토어를 재생하십시오. 내 문제를 해결했습니다.


7
감사. 몇 가지 세부 사항을 추가하겠습니다. 위젯 태그의 버전 속성을 0.0.1 에서 0.0.2로 변경했습니다 . cordova build --release android명령을 실행 한 후이 변경 사항은 android : versionCode = "1" 에서 android : versionCode = "2"로 , android : versionName = "0.0.1"**에서 ** android : versionName = 으로 두 가지 속성에서 AndroidManifest.xml을 수정했습니다 . 매니페스트 태그의 "0.0.2"
remat_br

16

이 오류는 이미 Playstore에있는 것과 동일한 버전 값을 가진 APK를 업로드하려고 할 때 나타납니다.

build.gradle 파일 => versionCode 및 versionName에서 다음을 변경하십시오.

defaultConfig {
    applicationId "com.my.packageId"
    minSdkVersion 16
    targetSdkVersion 27
    versionCode 2      <-- increment this by 1
    versionName "2.0"  <-- this is the version that shows up in playstore, 
                           remember that the versioning scheme goes as follows.
                           first digit = major breaking changes version
                           second digit = minor changes version
                           third digit = minor patches and bug fixes.
                           e.g versionName "2.0.1"
}

10

때때로 출시 생성 중에 APK를 업로드 할 때 PlayStore에 버그가 발생하고 현재 초안 출시에 대해 동일한 APK를 다시 업로드 할 수 없기 때문에 중단됩니다. "업로드 실패 ..."오류가 표시됩니다.

해결책은 릴리스 관리 에서 아티팩트 라이브러리 메뉴 로 이동 하여 초안 아티팩트를 삭제하는 것입니다. 이 작업이 완료되면 APK를 다시 업로드하고 출시를 완료 할 수 있습니다.

다른 사람들에게 도움이되기를 바랍니다 ...


7

안드로이드 스튜디오 1.1.0에서, 변화 versionCodebuild.gradle대한 Module: app필요는 변경하지 않고 versionName:

android {
...
    defaultConfig {
...
        versionCode 3
        versionName "1.0"
    }
...
}

4

Martin Konecny의 답변이 말했듯이 versionCode를 더 높은 것으로 변경해야합니다.

이전 버전 코드는 28입니다. 로 변경해야합니다 29.

안드로이드 개발자 웹 사이트문서에 따르면 . 버전 코드는

다른 버전에 상대적인 애플리케이션 코드의 버전을 나타내는 정수 값입니다.

따라서 문서에 명시된 바와 같이 이전 버전 코드와 관련이 있어야합니다 (관련성에 따라 더 높음을 의미 함).

애플리케이션의 각 연속 릴리스가 더 큰 가치를 사용하는지 확인해야합니다.

문서에서 다시 언급했듯이

android : versionCode 값이 사용자에게 표시되는 애플리케이션 릴리스 버전과 반드시 ​​유사하지는 않습니다 (아래의 android : versionName 참조).

따라서 이것이 2.0001앱 의 릴리스이지만 반드시 versionCode가 2.

도움이 되었기를 바랍니다 :)


4

Android Studio를 사용하는 경우 다음으로 이동할 수 있습니다.

빌드-> 플레이버 편집

그리고 거기에서 버전 코드와 이름을 변경하십시오.

여기에 이미지 설명 입력


4

Expo와 함께 Building Standalone Apps를 사용하는 경우 표준 app.json구성에 version속성에 대한 참조 만 있기 때문에 versionCode 오류가 발생할 수 있습니다 .

다음과 같이 versionCode속성 을 추가 할 수있었습니다 android.

샘플 App.json

{
  "expo": {
    "sdkVersion": "29.0.0",
    "name": "App Name",
    "version": "1.1.0",
    "slug": "app-name",
    "icon": "src/images/app-icon.png",
    "privacy": "public",
    "android": {
      "package": "com.madhues.app",
      "permissions": [],
      "versionCode": 2 // Notice the versionCode added under android.
    }
  }
}

자세한 문서 : https://docs.expo.io/versions/v32.0.0/workflow/configuration/#versioncode


4

(Flutter 앱의 경우) 이미 버전 코드 1이있는 APK 또는 Android App Bundle이 있으므로 다른 버전 코드를 사용해야합니다.

당황하지 마십시오 ...

당신은에서 변경해야 플러터 버전 에서 pubspec.yaml의 파일 버전 대구 의 전자 local.properties의 파일.

먼저 pubspec.yaml 파일 로 이동 합니다. 처음 세 줄은 앱의 이름, 설명 및 버전이어야합니다.

출시 전-

버전은 다음과 같이 보일 수 있습니다.

버전 : 1.0.0 + 1

따라서 출시 용 APK를 만들기 전에 ( Google Play Console 에서 기존 앱 업데이트, 즉 새 업데이트)이 숫자를 1 씩 늘려야합니다 (증가 단계에 대한 요구 사항이 없으므로 늘려야합니다).

해결책

해당 버전을 (필요에 따라)로 변경하십시오.

버전 : 1.0.1 + 2

그리고 두 번째 경우

flutter.versionCode는 에서 프로젝트 -> 안드로이드 -> local.properties은 이다

flutter.versionCode = 1 그런 다음이를 변경하거나 flutter.versionCode = 2 또는 이전 코드보다 더 큰 숫자로 업그레이드합니다 .

마지막으로 문서에 따라 앱을 출시합니다.


다음 버전 코드에 대한 그래서 의미 버전 이있다, major.minor.patch+build, 놀이입니다 마지막보고 build구성 요소? (그건 버그가 아닙니까?)
AWhitford

3

phonegap / cordova 응용 프로그램을 사용하는 경우 config.xml을 편집하고 위젯에 android-versionCode 및 버전을 추가하십시오.

<widget id = "com.xxx.yyy"version = "1.0.1"xmlns = "http://www.w3.org/ns/widgets"xmlns : cdv = "http://cordova.apache.org/ ns / 1.0 "android-versionCode ="100001 "version ="1.0.1 ">


1

Flutter 앱의 Android APK에 대해이 오류가 발생하면 defaultConfig {} 아래의 app / build.gradle 파일에서

주석 처리

versionCode flutterVersionCode.toInteger()
versionName flutterVersionName

추가

versionCode 2
versionName "2"

또는 "이전 버전 코드"+ 1.


1

단순히 PLAYSTORE의 버전 코드를 변경하는 플러터 응용 프로그램 업로드하는 동안 같은 오류가 발생 pubspec.yaml 나를 위해 일을. 버전 코드를 +1에서 +2로 변경 한 다음 다음을 사용하여 apk를 다시 빌드 할 수 있습니다.

flutter build apk --split-per-abi 

사용자를 위해 모든 APK를 Playstore에 업로드합니다. 다음에 업데이트를 푸시하려면 버전 코드를 +3 등으로 업데이트해야합니다.

참고 : 버전 코드와 버전 이름이 다르므로 android / local.properties 파일 에서 확인할 수 있습니다 . 예 : 버전 : 1.0.0 + 2

버전은 1.0.0이고 버전 코드는 +2입니다.


0

이미 Google Play 스토어에 버전 3의 APK 파일을 업로드했기 때문인 것 같습니다. 그리고 다시 동일한 버전으로 apk를 업로드하고 있습니다. 그래서이 문제가 발생했습니다.

따라서 솔루션을 위해 버전 이름과 버전 코드 (1 씩 증가)를 변경하고 애플리케이션을 한 번 실행 한 다음 Google Play에 업로드 한 후 애플리케이션을 실행해야합니다.


0

계속 같은 오류가 계속 발생했습니다.

마지막으로 스크린 샷과 같이 Google Play Console 을 사용하여 수동으로 apk 파일을 업로드했습니다 .

App Release에서 스크린 샷에 표시된 "CREATE RELEASE"버튼을 선택하고 다음 위치에서 apk 파일을 업로드합니다./android/app/bin/build/outputs/apk/release/app-release.apk

여기에 이미지 설명 입력


0

제 경우에는 AndroidManifest,

      javaCompileOptions {
        annotationProcessorOptions {
            arguments = [
                    'androidManifestFile': 'app\\build\\intermediates\\merged_manifests\\debug\\processDebugManifest\\merged\\AndroidManifest.xml'
            ]
        }
   }

여기에서 'androidManifestFile'위치가 잘못되었습니다.

"androidManifestFile": "$projectDir/src/main/AndroidManifest.xml".toString()

모든 것이 효과가 있었다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.