Tải lên không thành công Bạn cần sử dụng mã phiên bản khác cho APK của mình vì bạn đã có mã phiên bản 2


128

Theo câu trả lời này Cách giải quyết "Mã phiên bản APK của bạn cần cao hơn 2." trong Bảng điều khiển dành cho nhà phát triển của Google Play? Tôi vừa thay đổi mã phiên bản từ 2 thành 3 và không thể tải lên bản dựng.

Đây là tệp kê khai cũ của tôi trước khi tôi tải lên 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" />
        .....

đây là mã phiên bản mới mà tôi phải tải lên trên bảng điều khiển dành cho nhà phát triển Android. Xem menifest của tôi

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

Tôi không biết vấn đề là gì. Bất kỳ giúp đỡ? nhập mô tả hình ảnh ở đây

Câu trả lời:


125
android:versionCode="28"

Trước đó của bạn versionCodelà 28. Bạn nên tăng nó từ 1 đến 29.

android:versionCode="29"

Có lẽ, các phiên bản ứng dụng trước đây của bạn là 1 đến 28. Bằng cách phát hành với Mã phiên bản 3, bạn đang xung đột với phiên bản trước của ứng dụng đã được phát hành với Mã phiên bản này.


Con số này chỉ được sử dụng để xác định xem một phiên bản có gần đây hơn một phiên bản khác hay không, với những con số cao hơn cho biết các phiên bản mới hơn. Đây không phải là số phiên bản thể hiện cho người dùng
Mohamed AbdelraZek

Đối với bất kỳ ai khác có thể nhầm lẫn, xin lưu ý rằng đây không phải là phiên bản sdk mà là mã phiên bản ứng dụng của bạn,
SHIKHAR SINGH

Bạn có thể cho tôi biết chính xác đường dẫn của tệp đó là gì không?
João Pimentel Ferreira

214

Đối với những người sử dụng Android Studio các vấn đề có thể được giải quyết bằng cách chỉnh sửa versionCodeversionNamein build.gradlethay vì AndroidManifest.xml.

ví dụ

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

3
Bạn có thể đọc AndroidManifest.xml từ build.gradle không? Không hợp lý khi có giá trị hai lần.
MonoThreaded

Đây là câu trả lời. Tha gì happend ở đây là gradle là một trong những incharge để xây dựng proyect, vì vậy nó ghi đè các phiên bản
jasmo2

1
đảm bảo Mã phiên bản là một số nguyên và bạn sẽ đồng bộ hóa sau khi thay đổi.
sk md

29

Trong trường hợp của tôi, đó là một vấn đề đơn giản. Tôi đã tải ứng dụng lên bảng điều khiển trước đó nên tôi thử tải lại ứng dụng đó lên sau khi giải quyết một số vấn đề Tất cả những gì tôi làm là xóa APK trước đó khỏi Thư viện phần mềm


11
Tôi đã tải lên một phiên bản thông qua Google Play Console, sau đó bị xóa trước khi xuất bản và tải lên lại và gặp lỗi OP. Tôi nghĩ rằng tôi đã xóa nó, nhưng nó vẫn còn trong Thư viện Tạo tác. Xóa khỏi đó rồi tôi có thể tải lên ...
Scuzzlebutt

22

nếu bạn đang sử dụng ionic framework , hãy truy cập tệp config.xml và thay đổi thuộc tính "version" trong thẻ "widget" . tăng số phiên bản. sau đó xây dựng lại, ký và tải apk của bạn lên cửa hàng chơi. điều đó đã khắc phục sự cố của tôi.


7
Cảm ơn. Tôi sẽ chỉ để thêm một số chi tiết. Tôi đã thay đổi thuộc tính phiên bản trong thẻ tiện ích con từ 0.0.1 thành 0.0.2 . Sau khi cordova build --release androidlệnh được thực thi , thay đổi này đã sửa đổi AndroidManifest.xml thành hai thuộc tính, từ android: versionCode = "1" thành android: versionCode = "2" và từ android: versionName = "0.0.1" ** thành ** android: versionName = "0.0.2" trong thẻ tệp kê khai.
remat_br

16

Lỗi này xuất hiện khi bạn cố gắng tải lên một gói ứng dụng có giá trị phiên bản giống với một gói ứng dụng đã có trên cửa hàng chơi.

Chỉ cần thay đổi thông tin sau trong tệp build.gradle => versionCode và 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

Đôi khi PlayStore gặp lỗi khi bạn tải lên APK trong quá trình tạo Bản phát hành và bạn gặp khó khăn vì không thể tải lại APK đó lên đối với bản phát hành nháp hiện tại. Bạn gặp lỗi "Tải lên không thành công ..."

Giải pháp là đi tới trình đơn Thư viện phần mềm , trong phần Quản lý bản phát hành và xóa phần mềm dự thảo. Sau khi hoàn tất, bạn sẽ có thể tải lại APK lên và kết thúc quá trình phát hành.

Hy vọng nó sẽ giúp ích cho những người khác ...

Ben


7

Trong Android Studio 1.1.0, thay đổi versionCodetrong build.gradlecho Module: appvà không nhất thiết thay đổi versionName:

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

4

Đúng như câu trả lời của Martin Konecny , bạn cần thay đổi Mã phiên bản thành một thứ gì đó cao hơn.

Mã phiên bản trước của bạn là 28. nó nên được đổi thành 29.

Theo tài liệu trên trang web của nhà phát triển android. một mã phiên bản là

Một giá trị số nguyên đại diện cho phiên bản của mã ứng dụng, so với các phiên bản khác.

Vì vậy, nó phải có liên quan (liên quan đến tôi có nghĩa là cao hơn) với Mã phiên bản trước đó như đã lưu ý trong tài liệu:

bạn nên đảm bảo rằng mỗi bản phát hành tiếp theo của ứng dụng của bạn sử dụng một giá trị lớn hơn.

Như đã đề cập lại trong tài liệu

giá trị android: versionCode không nhất thiết phải có sự tương đồng mạnh mẽ với phiên bản phát hành ứng dụng hiển thị cho người dùng (xem android: versionName, bên dưới)

Vì vậy, mặc dù đây là bản phát hành 2.0001ứng dụng của bạn, nhưng điều đó không nhất thiết có nghĩa là Mã phiên bản 2.

Hi vọng điêu nay co ich :)


4

Nếu đang sử dụng Android Studio, bạn có thể:

Xây dựng -> Chỉnh sửa hương vị

Và thay đổi Mã phiên bản và Tên từ đó.

nhập mô tả hình ảnh ở đây


4

Nếu bạn đang sử dụng Xây dựng ứng dụng độc lập với Expo, lỗi Mã phiên bản có thể xuất hiện do app.jsoncấu hình tiêu chuẩn chỉ có tham chiếu đến thuộc versiontính.

Tôi đã có thể thêm một versionCodethuộc androidtính như sau:

App.json mẫu

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

Tài liệu chi tiết: https://docs.expo.io/versions/v32.0.0/workflow/configuration/#versioncode


4

(Đối với ứng dụng Flutter) Bạn cần sử dụng mã phiên bản khác cho APK hoặc Android App Bundle của mình vì bạn đã có mã phiên bản 1.

Đừng hoảng sợ ...

Bạn cần thay đổi Phiên bản Flutter từ tệp pubspec.yamlPhiên bản Cod e từ tệp local.properties .

Đầu tiên, hãy truy cập tệp pubspec.yaml của bạn . Ba dòng đầu tiên phải là tên, mô tả và phiên bản của Ứng dụng.

Trước khi phát hành -

Đối với bạn, phiên bản có thể trông giống như sau:

phiên bản: 1.0.0 + 1

Vì vậy, trước khi tạo apk để phát hành (để cập nhật ứng dụng đang thoát của bạn trên Google Play Console, tức là cho bản cập nhật mới), hãy đảm bảo bạn tăng số này lên 1 (Bạn nên tăng vì không có yêu cầu về bước tăng).

Giải pháp

Chỉ cần thay đổi phiên bản đó thành (Theo nhu cầu của bạn)

phiên bản: 1.0.1 + 2

Và thứ hai nếu

flashing.versionCode trong Project -> android -> local.properties

flaming.versionCode = 1 sau đó thay đổi hoặc nâng cấp nó lên thành flash.versionCode = 2 hoặc bất kỳ số nào lớn hơn mã trước đó.

Và cuối cùng phát hành ứng dụng theo tài liệu.


Vì vậy, đối với mã Phiên bản sau Phiên bản ngữ nghĩa , nó ở đâu major.minor.patch+build, Play chỉ xem xét buildthành phần cuối cùng ? (Đó không phải là lỗi?)
AWhitford

3

nếu bạn đang sử dụng các ứng dụng phonegap / cordova, chỉ cần chỉnh sửa config.xml của bạn và thêm Mã phiên bản android và phiên bản trong tiện ích.

<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

Nếu bạn gặp lỗi này đối với APK Android của Ứng dụng Flutter, trong tệp app / build.gradle của bạn dưới defaultConfig {}

bình luận

versionCode flutterVersionCode.toInteger()
versionName flutterVersionName

và thêm

versionCode 2
versionName "2"

hoặc "mã phiên bản trước" + 1.


1

Tôi gặp phải lỗi tương tự khi tải ứng dụng Flagship lên playstore, chỉ cần thay đổi mã phiên bản trong pubspec.yaml phù hợp với tôi. có thể thử thay đổi mã phiên bản, ví dụ từ +1 thành +2 và sau đó xây dựng lại apk bằng cách sử dụng

flutter build apk --split-per-abi 

và tải tất cả apk lên cửa hàng chơi cho người dùng của bạn. Lần tới khi bạn muốn cập nhật, hãy đảm bảo cập nhật mã phiên bản lên +3, v.v.

Lưu ý: mã phiên bản và tên phiên bản khác nhau, bạn có thể thấy điều đó trong tệp android / local.properties . ví dụ: phiên bản: 1.0.0 + 2

phiên bản là 1.0.0 và mã verison là +2


0

Điều này có vẻ như do bạn đã tải tệp APK của phiên bản 3 lên Cửa hàng Google Play. Và một lần nữa bạn đang tải lên apk với cùng một phiên bản. Vì vậy, vấn đề này đã được xảy ra.

Vì vậy, đối với giải pháp, bạn cần thay đổi tên phiên bản và mã phiên bản của mình (tăng dần bằng 1) và chạy ứng dụng một lần và sau khi xuất nó tải lên Google Play.


0

Tôi liên tục gặp lỗi giống nhau và lặp đi lặp lại,

Cuối cùng , tôi đã tải lên tệp apk theo cách thủ công bằng Google Play Console như được hiển thị trong ảnh chụp màn hình.

Trong Bản phát hành ứng dụng, bạn chọn nút "TẠO XÁC NHẬN" hiển thị trong ảnh chụp màn hình và tải lên tệp apk của bạn từ/android/app/bin/build/outputs/apk/release/app-release.apk

nhập mô tả hình ảnh ở đây


0

Trong trường hợp của tôi, tôi có một cái gì đó như thế này trong của tôi AndroidManifest,

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

ở đây, vị trí 'androidManifestFile' bị sai, đã thay đổi thành

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

mọi thứ đều hoạt động

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.