การอัปโหลดล้มเหลวคุณต้องใช้รหัสเวอร์ชันอื่นสำหรับ APK ของคุณเนื่องจากคุณมีรหัสเวอร์ชัน 2 อยู่แล้ว


129

ตามคำตอบนี้วิธีแก้ "รหัสเวอร์ชัน APK ของคุณต้องสูงกว่า 2" ใน Developer Console ของ 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" />
        .....

นี่คือรหัสเวอร์ชันใหม่ที่ฉันต้องอัปโหลดบนคอนโซลนักพัฒนาซอฟต์แวร์ Android ดู 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 นี้แล้ว


หมายเลขนี้ใช้เพื่อระบุว่าเวอร์ชันหนึ่งเป็นเวอร์ชันล่าสุดมากกว่าเวอร์ชันอื่นโดยตัวเลขที่สูงกว่าจะแสดงเวอร์ชันล่าสุด นี่ไม่ใช่หมายเลขเวอร์ชันที่แสดงให้ผู้ใช้เห็น
Mohamed AbdelraZek

สำหรับใครที่อาจสับสนโปรดทราบว่านี่ไม่ใช่เวอร์ชัน sdk แต่เป็นรหัสเวอร์ชันแอปของคุณ
SHIKHAR SINGH

คุณบอกฉันได้ไหมว่าเส้นทางของไฟล์นั้นคืออะไร?
João Pimentel Ferreira

214

สำหรับคนที่ใช้ Android Studio ปัญหาอาจแก้ไขได้โดยการแก้ไข versionCodeและversionNameในแทนbuild.gradleAndroidManifest.xml

เช่น

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

3
คุณสามารถอ่าน AndroidManifest.xml จาก build.gradle ได้หรือไม่ ไม่สมเหตุสมผลที่จะมีค่าสองครั้ง
MonoThreaded

นี่คือคำตอบ สิ่งที่เกิดขึ้นที่นี่คือ gradle เป็นตัวกระตุ้นหนึ่งในการสร้าง proyect ดังนั้นจึงเขียนทับเวอร์ชัน
jasmo2

1
ตรวจสอบให้แน่ใจว่า versionCode เป็นจำนวนเต็มและคุณซิงค์หลังจากการเปลี่ยนแปลง
sk md

29

ในกรณีของฉันมันเป็นปัญหาง่ายๆ ฉันเคยอัปโหลดแอปในคอนโซลมาก่อนฉันจึงลองอัปโหลดอีกครั้งหลังจากแก้ไขปัญหาบางอย่างสิ่งที่ฉันทำคือลบ APK ก่อนหน้านี้ออกจากไลบรารี Artifact


11
ฉันอัปโหลดเวอร์ชันผ่าน Google Play Console แล้วลบออกก่อนเผยแพร่และอัปโหลดอีกครั้งและได้รับข้อผิดพลาด OP ฉันคิดว่าฉันลบมันไปแล้ว แต่มันยังคงอยู่ใน Artifact Library ลบจากตรงนั้นฉันจะอัพโหลดได้ ...
Scuzzlebutt

22

หากคุณใช้ไอออนิกเฟรมเวิร์กไปที่ไฟล์config.xmlและเปลี่ยนแอ็ตทริบิวต์"version"ในแท็ก"widget" เพิ่มหมายเลขเวอร์ชัน จากนั้นสร้างใหม่ลงชื่อและอัปโหลด apk ของคุณไปยัง play store ที่แก้ไขปัญหาของฉัน


7
ขอบคุณ ฉันจะเพิ่มรายละเอียดเล็กน้อย ผมเปลี่ยนรุ่นแอตทริบิวต์ในแท็กวิดเจ็ตจาก0.0.1ไป0.0.2 หลังจากเรียกใช้cordova build --release androidคำสั่งการเปลี่ยนแปลงนี้ได้แก้ไข AndroidManifest.xml ในสองแอตทริบิวต์จากandroid: versionCode = "1"เป็น android: versionCode = "2" และจากandroid: versionName = "0.0.1" ** เป็น ** android: versionName = "0.0.2"ในแท็กรายการ
remat_br

16

ข้อผิดพลาดนี้ปรากฏขึ้นเมื่อคุณพยายามอัปโหลด apk ที่มีค่าเวอร์ชันเดียวกับที่มีอยู่แล้วใน playstore

เพียงแค่เปลี่ยนสิ่งต่อไปนี้ในไฟล์ 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"
}

11

บางครั้ง PlayStore พบข้อบกพร่องเมื่อคุณอัปโหลด APK ในระหว่างการสร้างรุ่นและคุณติดขัดเนื่องจากคุณไม่สามารถอัปโหลด APK เดิมสำหรับเวอร์ชันร่างปัจจุบันได้ คุณได้รับข้อผิดพลาด "การอัปโหลดล้มเหลว ... "

วิธีแก้ปัญหาคือไปที่เมนูไลบรารี Artifactภายใต้การจัดการรุ่นและเพื่อลบสิ่งประดิษฐ์แบบร่าง เมื่อเสร็จแล้วคุณจะสามารถอัปโหลด APK อีกครั้งและเผยแพร่ให้เสร็จสิ้น

หวังว่ามันจะช่วยคนอื่น ...

เบน


7

ในสตูดิโอของ Android 1.1.0 การเปลี่ยนแปลงversionCodeในbuild.gradleสำหรับModule: appและไม่จำเป็นต้องเปลี่ยนversionName:

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

4

เช่นเดียวกับคำตอบของ Martin Konecny คุณต้องเปลี่ยน versionCode ให้สูงขึ้น

28รหัสเวอร์ชันก่อนหน้าของคุณเป็น 29มันควรจะเปลี่ยนไป

ให้เป็นไปตาม เอกสารในเว็บไซต์นักพัฒนา Android รหัสเวอร์ชันคือ

ค่าจำนวนเต็มที่แสดงถึงเวอร์ชันของโค้ดแอปพลิเคชันที่สัมพันธ์กับเวอร์ชันอื่น ๆ

ดังนั้นจึงควรเกี่ยวข้อง (โดยที่เกี่ยวข้องฉันหมายถึงสูงกว่า) กับ versionCode ก่อนหน้าตามที่ระบุไว้ในเอกสาร:

คุณควรตรวจสอบให้แน่ใจว่าแอปพลิเคชันแต่ละรุ่นที่ต่อเนื่องกันใช้มูลค่าที่มากกว่า

ดังกล่าวอีกครั้งในเอกสาร

ค่า android: versionCode ไม่จำเป็นต้องมีความคล้ายคลึงอย่างมากกับเวอร์ชันเผยแพร่แอปพลิเคชันที่ผู้ใช้มองเห็นได้ (ดู android: versionName ด้านล่าง)

ดังนั้นแม้ว่า2.0001แอปนี้จะเป็นรุ่นที่เปิดตัวแต่ก็ไม่ได้หมายความว่าจะเป็น versionCode เสมอไป2เสมอไป

หวังว่านี่จะช่วยได้ :)


4

หากคุณใช้ Android Studio คุณสามารถไปที่:

สร้าง -> แก้ไขรสชาติ

และเปลี่ยนรหัสเวอร์ชันและชื่อจากที่นั่น

ใส่คำอธิบายภาพที่นี่


4

หากคุณใช้ Building Standalone Apps กับ Expo ข้อผิดพลาด versionCode อาจเกิดขึ้นเนื่องจากการกำหนดค่ามาตรฐานapp.jsonมีการอ้างอิงถึงversionคุณสมบัติเท่านั้น

ฉันสามารถเพิ่ม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 App)คุณต้องใช้รหัสเวอร์ชันอื่นสำหรับ APK หรือ Android App Bundle เนื่องจากคุณมีรหัสเวอร์ชัน 1 อยู่แล้ว

อย่าเพิ่งตกใจ ...

คุณต้องเปลี่ยนในFlutter Versionจากไฟล์pubspec.yamlและVersion Cod e จากไฟล์local.properties

ก่อนอื่นไปที่ไฟล์pubspec.yamlของคุณ สามบรรทัดแรกควรเป็นชื่อคำอธิบายและเวอร์ชันของแอป

ก่อนวางจำหน่าย -

สำหรับคุณเวอร์ชันอาจมีลักษณะดังนี้:

เวอร์ชัน: 1.0.0 + 1

ดังนั้นก่อนที่จะสร้าง apk สำหรับการเปิดตัว (สำหรับการอัปเดตแอปที่ออกจากGoogle Play Consoleเช่นสำหรับการอัปเดตใหม่) ตรวจสอบให้แน่ใจว่าคุณเพิ่มจำนวนนี้ทีละ 1 (คุณควรเพิ่มจำนวนนี้เนื่องจากไม่มีข้อกำหนดในขั้นตอนการเพิ่ม)

สารละลาย

เพียงแค่เปลี่ยนเวอร์ชันนั้นเป็น (ตามความต้องการของคุณ)

เวอร์ชัน: 1.0.1 + 2

และวินาทีถ้า

flutter.versionCodeในProject -> android -> 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

หากคุณได้รับข้อผิดพลาดนี้สำหรับ APK Android ของ Flutter App ในไฟล์ app / build.gradle ภายใต้ defaultConfig {}

แสดงความคิดเห็น

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

ดูเหมือนว่าคุณได้อัปโหลดไฟล์ APK ของเวอร์ชัน 3 ไปยัง Google Play Store แล้ว และอีกครั้งคุณกำลังอัปโหลด apk ด้วยเวอร์ชันเดียวกัน ปัญหานี้จึงเกิดขึ้น

ดังนั้นสำหรับวิธีแก้ไขคุณต้องเปลี่ยนชื่อเวอร์ชันและรหัสเวอร์ชันของคุณ (เพิ่มขึ้นด้วย 1) และเรียกใช้แอปพลิเคชันหนึ่งครั้งและหลังจากส่งออกอัปโหลดไปยัง Google Play


0

ฉันได้รับข้อผิดพลาดเดิมซ้ำแล้วซ้ำเล่า

ในที่สุดฉันก็อัปโหลดไฟล์ apk ด้วยตนเองโดยใช้Google Play Consoleดังที่แสดงในภาพหน้าจอ

ภายใต้ App 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.