iT邦幫忙

2021 iThome 鐵人賽

DAY 28
0
Mobile Development

轉職App開發打怪雜記系列 第 28

更新android專案API版本

接下來要來講些Android 的部分,因為種種因素所以必須處理一些android專案,但因為我沒有正規的學過Android開發,所以全部都是自學,學習的順序也是屬於頭痛醫頭腳痛醫腳的模式,本篇主要是紀錄我更新API版本的部分,原本專案的API 為 28,預計將其更新至API 30,但因為我不太熟悉的原因,會分兩階段進行,先升級至API 29,再升至API 30,中間會一併更新的也會做個紀錄。
我電腦原本使用的Android Studio 版本:
https://ithelp.ithome.com.tw/upload/images/20210928/20130757vGpGOWE3id.png
Android Studio是用Gradle來建構專案的,而build.gradle是以groovy語言寫的,
接著我們開啟專案,並找到build.gradle(:app)檔案,此檔案有點類似建構專案的腳本,
把各種關於如何編譯APP等等的設定全寫進檔案裡,以此執行
https://ithelp.ithome.com.tw/upload/images/20210928/20130757CWOHj4F3ps.png
找到下方的代碼,將其更新為API 29

compileSdkVersion 28
defaultConfig {
    applicationId "com.test.project”
    minSdkVersion 19
    targetSdkVersion 28
    versionCode 18
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    vectorDrawables.useSupportLibrary = true
    multiDexEnabled true
    maxSdkVersion 28
}

buildToolsVersion '28.0.3'

Step1:
將以下版本號改為29
compileSdkVersion 29
targetSdkVersion 29
maxSdkVersion 29
buildToolsVersion '29.0.3’
編譯後沒有出現錯誤,繼續更新為API 30

Step2:
compileSdkVersion 30
targetSdkVersion 30
maxSdkVersion 30
buildToolsVersion ’30.0.3’
編譯成功,但運行APP時卻閃退
查看logcat看到錯誤訊息Rejecting re-init on previously-failed class,下方皆是第三方套件的錯誤訊息
於是查找AndroidManifest.xml中依賴庫中的此套件
implementation 'com.squareup.okhttp3:okhttp:4.0.1'
將其更新為
implementation 'com.squareup.okhttp3:okhttp:4.9.1’
然後點擊上方出現的提示”Sync Now”,同步一下
https://ithelp.ithome.com.tw/upload/images/20210928/20130757N0lzRdK0C4.png
接著我們再執行編譯,確認APP運行正常,即完成更新


上一篇
Apple Developer 憑證與Provisioning Profile更新
下一篇
更新Android Studio Arctic Fox | 2020.3.1與android X 與相關開發環境升級
系列文
轉職App開發打怪雜記30

尚未有邦友留言

立即登入留言