Android Studio常見問題(+)

風靈使發表於2018-10-27

Android Studio找不到FragmentActivity

右擊專案——》open module settings——》選擇第五個選項卡“Dependencies”——》點選加號——》選擇第一個Library dependency
——》我選擇的V4的版本是“com.android.support:support-v4:23.0.2”——》匯入後使用快捷鍵alt+enter即可。
如果還是無法匯入,就是SDK更新的問題。


Unsupported major.minor version 52.0解決辦法

android studio編譯程式時出現

java.lang.UnsupportedClassVersionError: com/android/build/gradle/AppPlugin : Unsupported major.minor version 52.0

Unsupported major.minor version 52.這個錯誤是由於(jdk)高版本的java project使用了低版本的來執行。使用命令(java -versionjavac -version)檢視java的版本和javac的版本是否一致,我之前Java版本是jdk8(androidstudio裡面指定的jdk8),javac版本是jdk7(環境變數裡面指定的jdk7),由於版本不一致導致之前的錯誤。
解決辦法就是修改環境變數,修改成androidstudio指定的jdk版本。


Android Studio下專案編譯出錯could not find com.android.tools.buildgradle:3.3.1

今天更新Android Studio後開啟Project,報如下錯誤:

Could not find com.android.tools.build:gradle:3.3.1.
Searched in the following locations:
    https://jcenter.bintray.com/com/android/tools/build/gradle/3.3.1/gradle-3.3.1.pom
    https://jcenter.bintray.com/com/android/tools/build/gradle/3.3.1/gradle-3.3.1.jar
    https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.3.1/gradle-3.3.1.pom
    https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.3.1/gradle-3.3.1.jar
Required by:
    project :
Open File

1、後來通過提示的目錄去檢視,發現目錄下沒有3.3.1.資料夾
在這裡插入圖片描述

2、在專案app下的build.gradle檔案內將 classpath '********:gradle:3.3.1'改為3.1.1即可

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
        google()
    }
}

3、重新整理專案sync 問題解決


編譯報錯:The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin.

Android Studio升級到3.1後編譯報錯:The SourceSet ‘instrumentTest’ is not recognized by the Android Gradle Plugin.

專案中 gradle 配置

sourceSets {
    main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        aidl.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
        jniLibs.srcDirs = ['libs']
    }
    // Move the tests to tests/java, tests/res, etc...
    instrumentTest.setRoot('tests')
    // Move the build types to build-types/<type>
    // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
    // This moves them out of them default location under src/<type>/... which would
    // conflict with src/ being used by the main source set.
    // Adding new build types or product flavors should be accompanied
    // by a similar customization.
    debug.setRoot('build-types/debug')
    release.setRoot('build-types/release')
}

原因
是這裡出問題了 instrumentTest.setRoot(‘tests’) ,你可能在升級 Android Studio 時更新了專案的 gradle 配置,這裡的配置中 instrumentTest 已被棄用,不適用於現在的 gradle 版本。

解決辦法

androidTest 替換 instrumentTest,編譯執行即可。


Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.

昨天還是可以執行的,今天執行Android Studio,一直提示:Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.

再網上找了很多解決方案,但是。。。。。MD!!!!

根據這個提示可以看出來,這應該是“即時執行”出問題啦,為了能夠繼續敲程式碼,找到了一個暫時性的解決方案:在Android Studio中的:Preferences(win中對應“Set”)----->Build,Execution,Deployment----->Instant Run,按照下圖進行勾選:
這裡寫圖片描述

我感覺這應該是即時執行的bug,如果不是bug,希望有人看到能給出更好的解決方案,謝謝!!謝謝!!謝謝!!重要的事情說三遍微笑

今天我更新一下博文,原因是下面評論區的“桃花林裡練醉拳”又給出了一種更好的解決問題的辦法:選單欄,Tools -> Adnroid -> enable ADB integration,再次感謝桃花林裡練醉拳。

相關文章