1. 程式人生 > >Android Studio更新到3.1.2後的問題解決過程

Android Studio更新到3.1.2後的問題解決過程

整天Android Studio都提示更新,強迫症看不下去了,也想用一下最新的IDE。所以今天把Android Studio從2.2更新到3.1.2。

第一次嘗試:

在映象網站下下來以後直接按流程做,開啟以前做的程式,顯示“Gradle project sync failed.”,底部提示“Error:connection reset”。

網上說是gradle下載不完全,按照方法進入distributionUrl中的網站,下載gradle壓縮包進入C:\Users\test\.gradle\wrapper\dists\gradle-4.1-all\9br9xq1tocpiv8o6njlyu5op1覆蓋後發現並沒有解決問題。

第二次嘗試:

接下來嘗試用Android Studio自帶的提示解決問題。Android Studio問題解決貌似是提示:升級plugin版本或者降低Gradle版本。用Android Studio提示方案後,sync終於成功!但是有5個warning,是因為在3.1.2版本中將compile變成了implementation和api這種問題。暫時不去管它。

第三次嘗試:

最後把電腦上的Android Studio相關檔案包括.android,.gradle,.Android Studio3.1都解除安裝了,重新安裝。按照https://blog.csdn.net/hackcoder/article/details/50321863

中的流程,但是貌似其中涉及到重新下載Gradle,感覺不連VPN下載可能仍然有問題。一狠心買了一個VPN,操作完後無Gradle project sync failed。把warning中的關鍵字都改為適合於Android3.0。無其他問題,但是載入舊專案仍然出現包的版本問題,但是activity中的方法仍能呼叫,執行程式閃退

因為想試試最新的版本(雖然不一定適合執行),把compileSdkVersion和targetSdkVersion改成28,從app-->Open Modle Setting-->Dependencies中新增appcomat-v7     28.0.0-alpha3

recyclerview-v7    28.0.0-alpha3,appcamat-v7

appcomat-v7仍然報錯,alt+enter按照Android Studio提示新增//noinspection GradleCompatible

sync倒是不再報錯,但是執行程式出現“Program type already present:android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat”

 implementation 'com.android.support:support-v4:28.0.0-alpha3'

照樣從Dependencies新增support-v4:

接下來再執行程式,成功在模擬器上執行,成功的那一刻感動到哭o(╥﹏╥)o

最後在build.gradle中的配置如下:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion '28.0.1'
    defaultConfig {
        applicationId "com.yanjin.helloworld"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

repositories {
    mavenCentral()
    maven { url 'https://maven.google.com' }
}


dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'


    })

    implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'
    testImplementation 'junit:junit:4.12'
    implementation 'com.google.android.gms:play-services-appindexing:9.8.0'
    implementation 'com.github.bumptech.glide:glide:4.7.1'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.7.1'
    implementation 'com.android.support:recyclerview-v7:28.0.0-alpha3'
    implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'
    implementation 'com.android.support:support-v4:28.0.0-alpha3'
}

總結:

程式設計就是這樣,經常會遇到很多奇怪的問題,只能不斷地百度,一個小問題可能要弄一天。這次更新出現的問題還不包括所有的問題,並且初學Android,還沒完全弄懂原理,只是按照網上的經驗照貓畫虎罷了。

這次是第一次寫部落格來記錄自己程式設計中遇到的問題和解決過程,文字撰寫和邏輯上還有很多問題,以後要堅持寫部落格的習慣,溫故知新,不斷提高自己的能力。