簡體   English   中英

當最新版本的minSDKversion級別更高時,如何解決舊版本android應用中的錯誤?

[英]How can I fix a bug in an old version of an android app when the latest version has a higher minSDKversion level?

假設我發布了一個需要API Level 2的android應用,清單中包含以下內容。

android:versionCode="1"
android:versionName="1.0"
android:minSdkVersion=2

然后,我創建一個主要更新,現在需要API級別3

android:versionCode="3"
android:versionName="2.0"
android:minSdkVersion=3

現在,如果我發現要修復的1.0版錯誤,該怎么辦? 仍然可能有版本1.0用戶使用的設備不支持API級別3。

我可以發布以下內容

android:versionCode="4"
android:versionName="1.1"
android:minSdkVersion=2

但是,所有原來的2.0用戶將降級為1.1。 我是否需要同時發布甚至更高的API級別3版本?

android:versionCode="5"
android:versionName="2.1"
android:minSdkVersion=3

有沒有更好的方法來處理這種情況? 我是否應該將版本代碼值隔開以允許這樣的中間更新?

Should I instead space out my version code values to allow for intermediate updates like this?

這個。 如果您發布具有更高版本要求的更新,並且打算繼續支持舊版本的用戶,則最好在版本代碼中留出足夠的空間來獨立更新兩個版本。

我想說,實現此目標的最佳方法是將目標版本的Android版本包含在版本代碼中,或者從版本名稱中獲取版本代碼(如果您的版本名稱提供了足夠的更新空間)。

android:versionCode="2001"
android:versionName="1.0"
android:minSdkVersion=2

android:versionCode="3001"
android:versionName="2.0"
android:minSdkVersion=3

android:versionCode="2002"
android:versionName="1.1"
android:minSdkVersion=2

android:versionCode="3002"
android:versionName="2.1"
android:minSdkVersion=3

要么

android:versionCode="1000"
android:versionName="1.0"
android:minSdkVersion=2

android:versionCode="2000"
android:versionName="2.0"
android:minSdkVersion=3

android:versionCode="1001"
android:versionName="1.1"
android:minSdkVersion=2

android:versionCode="2001"
android:versionName="2.1"
android:minSdkVersion=3

您可能可以為此目的使用maxSdkVersion。 對於1.1版,您可以執行以下操作:

android:versionCode="4"
android:versionName="1.1"
android:minSdkVersion=2
android:maxSdkVersion=2

maxSdkVersion已過時,Google不推薦使用,但它仍應為Google Play中具有API級別3的設備過濾版本1.1(盡管它們仍然可以側面加載它,但我不必為此擔心)。 有關此屬性的更多信息,請檢查docs

有關其他答案,請在此處檢查。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM