Yüklenemedi Sürüm kodu 2'ye sahip bir sürümünüz olduğundan APK'nız için farklı bir sürüm kodu kullanmanız gerekiyor


129

Bu cevaba göre "APK'nızın sürüm kodu 2'den büyük olmalı" nasıl çözülür? Google Play'in Geliştirici Konsolunda mı? Sürüm kodunu 2'den 3'e değiştirdim ve yapıyı yükleyemedim.

Bu, apk'yi yüklemeden önceki eski bildirimim

<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" />
        .....

İşte android geliştirici konsoluna yüklemem gereken yeni sürüm kodu. Menifestimi gör

<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" />
        ......

Sorunun ne olduğunu bilmiyorum. Herhangi bir yardım? görüntü açıklamasını buraya girin

Yanıtlar:


125
android:versionCode="28"

Bir önceki versionCodeSen 29'a 1 ile bunu artmalıdır 28. oldu.

android:versionCode="29"

Muhtemelen önceki uygulama sürümleriniz 1'den 28'e kadardı. VersionCode 3 ile yayınlayarak, uygulamanızın bu versionCode ile zaten yayınlanmış olan önceki bir sürümüyle çakışıyorsunuz.


Bu numara yalnızca bir sürümün diğerinden daha yeni olup olmadığını belirlemek için kullanılır, daha yüksek sayılar daha yeni sürümleri gösterir. Bu, kullanıcılara gösterilen sürüm numarası değil
Mohamed AbdelraZek


Bana o dosyanın yolunun tam olarak ne olduğunu söyleyebilir misin?
João Pimentel Ferreira

214

Android Studio kullanan kişiler için sorun düzenleyerek çözülebilir versionCodeve versionNameiçinde build.gradleyerine AndroidManifest.xml.

Örneğin

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

3
Build.gradle'dan AndroidManifest.xml dosyasını okuyabiliyor musunuz? İki kez değerlere sahip olmak mantıklı değil.
MonoThreaded

İşte cevap. Burada olan şudur ki, projeyi inşa etmek için tek büyük
güç gradle'dır

1
versionCode'un tam sayı olduğundan ve değişiklikten sonra eşitlediğinizden emin olun.
sk md

29

Benim durumumda bu basit bir konu. Daha önce konsola bir uygulama yükledim, bu yüzden bazı sorunları çözdükten sonra yeniden yüklemeyi deniyorum Tek yaptığım önceki APK'yi Yapı Kitaplığından silmek


11
Google Play Console aracılığıyla bir sürüm yükledim, ardından yayınlamadan önce sildim ve tekrar yükledim ve OP hatası aldım. Sildiğimi sanıyordum, ancak Yapı Kitaplığı'nda hâlâ mevcuttu. Oradan sil o zaman yükleyebilirim ...
Scuzzlebutt

22

ionic framework kullanıyorsanız , config.xml dosyasına gidin ve "widget" etiketindeki "version" niteliğini değiştirin . sürüm numarasını artırın. daha sonra mağazayı oynamak için apk'nizi yeniden oluşturun, imzalayın ve yükleyin. bu benim sorunumu çözdü.


7
Teşekkürler. Sadece birkaç ayrıntı eklemek için yapacağım. Ben gelen Widget etiketinde sürüm niteliğini değiştirdi 0.0.1 için 0.0.2 . cordova build --release androidKomut çalıştırıldıktan sonra , bu değişiklik AndroidManifest.xml'yi android: versionCode = "1" den android: versionCode = "2" ye ve android: versionName = "0.0.1" ** den ** android: versionName = e iki öznitelikte değiştirdi Manifest etiketinde "0.0.2" .
remat_br

16

Bu hata, Play Store'da bulunan ile aynı sürüm değerlerine sahip bir apk yüklemeye çalıştığınızda görünür.

Sadece build.gradle dosyanız => versionCode ve versionName'de aşağıdakileri değiştirin

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"
}

11

Bazen bir Sürüm oluşturma sırasında bir APK yüklediğinizde PlayStore bir hatayla karşılaşır ve mevcut taslak sürüm için aynı APK'yı tekrar yükleyemediğiniz için takılıp kalırsınız. "Yükleme başarısız oldu ..." hatasını alıyorsunuz

Çözüm, Sürüm yönetimi altında Yapı kitaplığı menüsüne gitmek ve taslak yapıyı silmektir. Bu yapıldıktan sonra, APK'yı tekrar yükleyebilecek ve sürümünüzü tamamlayabileceksiniz.

Umarım başkalarına yardımcı olur ...

Ben


7

Android Studio 1.1.0 yılında değişim versionCodeiçinde build.gradleiçin Module: appmutlaka değişmez ve versionName:

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

4

Martin Konecny'nin cevabının dediği gibi, versionCode'u daha yüksek bir şeye değiştirmeniz gerekiyor.

Önceki sürüm kodunuz idi 28. olarak değiştirilmelidir 29.

Android geliştirici web sitesindeki belgeye göre . bir sürüm kodu

Diğer sürümlere göre uygulama kodunun sürümünü temsil eden bir tamsayı değeri.

Dolayısıyla, belgede belirtildiği gibi önceki versionCode ile ilişkili olmalıdır (ilişkili olarak daha yüksek demek istiyorum):

uygulamanızın her bir sonraki sürümünün daha büyük bir değer kullandığından emin olmalısınız.

Belgede tekrar belirtildiği gibi

android: versionCode değerinin, kullanıcı tarafından görülebilen uygulama yayın sürümüne güçlü bir benzerliği olması gerekmez (bkz. android: versionName, aşağıda)

Dolayısıyla 2.0001, bu uygulamanızın sürümü olsa da, versionCode olduğu anlamına gelmez 2.

Bu yardımcı olur umarım :)


4

Android Studio kullanıyorsanız şunları yapabilirsiniz:

Oluştur -> Lezzetleri Düzenle

Ve oradan Sürüm Kodunu ve Adı değiştirin.

görüntü açıklamasını buraya girin


4

Expo ile Bağımsız Uygulamalar Oluşturma kullanıyorsanız, standart app.jsonyapılandırmanın yalnızca versionmülke bir referansı olması nedeniyle versionCode hatası sürünebilir .

Aşağıdaki gibi bir versionCodemülk ekleyebildim android:

Örnek 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.
    }
  }
}

Ayrıntılı belgeler: https://docs.expo.io/versions/v32.0.0/workflow/configuration/#versioncode


4

(Flutter Uygulaması için) APK'nız veya Android App Bundle'ınız için farklı bir sürüm kodu kullanmanız gerekir çünkü zaten sürüm kodu 1'e sahip bir kodunuz var.

Panik yapmayın ...

Sen değiştirmek gerekir Flutter Version gelen pubspec.yaml dosyası ve Sürüm Cod dan e local.properties dosyası.

Önce pubspec.yaml dosyanıza gidin . İlk üç satır, Uygulamanın adı, açıklaması ve sürümü olmalıdır.

Yayınlanmadan Önce -

Sizin için sürüm şunun gibi görünebilir:

sürüm: 1.0.0 + 1

Bu nedenle, sürüm için bir apk oluşturmadan önce ( Google Play Console'da mevcut uygulamanızı güncellemek için, yani yeni güncelleme için) bu sayıyı 1 artırdığınızdan emin olun. (Arttırma adımına gerek olmadığından artırmanız gerekir).

Çözüm

Sadece bu sürümü olarak değiştirin (İhtiyacınıza göre)

sürüm: 1.0.1 + 2

Ve İkinci eğer

flutter.versionCode içinde Projesi -> android -> local.properties olduğunu

flutter.versionCode = 1 sonra değiştirin veya flutter.versionCode = 2'ye veya önceki koddan daha büyük bir sayıya yükseltin .

Ve son olarak uygulamayı belgelere göre yayınlayın.


Öyleyse, Anlamsal Sürümlemeyi izleyen bir Sürüm kodu için , nerede olduğu major.minor.patch+build, Play yalnızca son buildbileşene mi bakıyor ? (Bu bir hata değil mi?)
AWhitford

3

phonegap / cordova uygulamalarını kullanıyorsanız, sadece config.xml dosyanızı düzenleyin ve android-versionCode ve version öğesini widget'a ekleyin.

<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 Uygulamanızın Android APK'sı için bu hatayı alırsanız, defaultConfig altındaki app / build.gradle dosyanızda {}

yorum Yap

versionCode flutterVersionCode.toInteger()
versionName flutterVersionName

ve Ekle

versionCode 2
versionName "2"

veya "önceki sürüm kodu" + 1.


1

Basitçe Playstore sürüm kodunu değiştirmek için bir çarpıntı uygulamasına yüklemeyi yaparken aynı hata aldı pubspec.yaml benim için çalıştı. örneğin + 1'den +2'ye sürüm kodunu değiştirmeyi ve ardından apk'yi kullanarak yeniden oluşturmayı deneyebilir

flutter build apk --split-per-abi 

ve tüm apk'leri kullanıcılarınız için oyun mağazasına yükleyin. Bir dahaki sefere bir güncellemeyi göndermek istediğinizde, sürüm kodunu +3 olarak güncellediğinizden emin olun.

Not: sürüm kodu ve sürüm adı farklıdır, bunu android / local.properties dosyasında görebilirsiniz. örneğin sürüm: 1.0.0 + 2

sürüm 1.0.0 ve sürüm kodu +2


0

Bunun nedeni, Google Play Store'a sürüm 3'ün APK dosyasını zaten yüklemiş olmanızdır. Ve yine aynı sürümle apk yüklüyorsunuz. Yani bu konu ortaya çıktı.

Dolayısıyla, çözüm için sürüm adınızı ve sürüm kodunuzu değiştirmeniz (1 artırarak) ve uygulamayı Google Play'e yükledikten sonra bir kez çalıştırmanız gerekir.


0

Aynı hatayı tekrar tekrar almaya devam ettim,

Sonunda apk dosyasını ekran görüntüsünde gösterildiği gibi Google Play Console'u kullanarak manuel olarak yükledim .

Uygulama Sürümü altında, ekran resminde gösterilen "SÜRÜM OLUŞTUR" düğmesini seçin ve apk dosyanızı şuradan yükleyin:/android/app/bin/build/outputs/apk/release/app-release.apk

görüntü açıklamasını buraya girin


0

Benim durumumda yaşıyorum benim, böyle bir şey vardı AndroidManifest,

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

burada 'androidManifestFile' konumu yanlış, şu şekilde değiştirildi:

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

her şey çalıştı

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.