无法加载带有未知错误android studio 3.0的AppCompat ActionBar

时间:2017-11-02 04:41:02

标签: android gradle android-actionbar android-studio-3.0

将android studio更新到版本3.0后,我无法预览我的应用程序的布局,我得到的错误如下:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion '26.0.2'
    defaultConfig {
        applicationId 'com.halloo'
        minSdkVersion 16
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:24.2.1'
    compile 'com.android.support:design:24.2.1'
    compile 'com.android.support:support-v4:24.2.1'
    testCompile 'junit:junit:4.12'
}

dependencies {
    compile 'com.squareup.okhttp3:okhttp:3.5.0'
}
dependencies {
    compile 'com.android.support:support-v4:24.+'
}
dependencies {
    compile 'com.android.support:cardview-v7:24.0.0'
    compile 'com.android.support:recyclerview-v7:24.0.0'
}

dependencies {
    compile 'com.android.support:support-v4:24.+'
    compile 'junit:junit:4.12'
}

dependencies {
    compile 'com.android.support:support-v4:24.+'
    compile 'com.mikhaellopez:hfrecyclerview:1.0.0'
}

我该如何解决这个问题?但如果我在我的设备手机上运行应用程序,它会正常运行。

这是我的Gradle文件:

{{1}}

非常感谢您在这件事上的时间和帮助。

3 个答案:

答案 0 :(得分:7)

首先,您需要使用相同版本的compileSdkVersionbuildToolsVersiontargetSdkVersionsupport library version。我看到你想使用buildToolsVersion '26.0.2'。因此,将所有这些更改为版本26。

其次,您需要清理build.gradle。不需要重复的依赖项。

第三,尝试清理并构建项目。作为最后的手段,请尝试File -> Invalidate Caches/Restart...

您的应用 build.gradle应该是这样的:

apply plugin: 'com.android.application'

android {
  compileSdkVersion 26
  buildToolsVersion '26.0.2'
  defaultConfig {
    applicationId 'com.halloo'
    minSdkVersion 16
    targetSdkVersion 26
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  }
  buildTypes {
    release {
      minifyEnabled false
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
  }
  productFlavors {
  }
}

dependencies {
  compile fileTree(include: ['*.jar'], dir: 'libs')
  androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
  })
  compile 'com.android.support:appcompat-v7:26.1.0'
  compile 'com.android.support:design:26.1.0'
  compile 'com.android.support:support-v4:26.1.0'
  compile 'com.squareup.okhttp3:okhttp:3.5.0'
  compile 'com.android.support:recyclerview-v7:26.1.0'
  compile 'com.mikhaellopez:hfrecyclerview:1.0.0'
  testCompile 'junit:junit:4.12'
}

您还需要检查项目 build.gradle。它应该包含build:gradle:3.0.0(正如@dheeraj-joshi指出的那样),如下所示:

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

allprojects {
  repositories {
    jcenter()
    mavenCentral()
//    maven { url "https://maven.google.com" }
    google()
  }
}


task clean(type: Delete) {
  delete rootProject.buildDir
}

然后,您需要检查您的gradle版本。它至少应该使用gradle-4.1

答案 1 :(得分:4)

我有类似的问题(可能不完全一样)。

我能够在手机上运行启动码,菜单就在那里。但是,Android Studio中的预览窗格并未显示实际布局。

我已修复此问题,方法是将 Theme.AppCompat.Light.DarkActionBar 更改为 styles.xml Base.Theme.AppCompat.Light.DarkActionBar >

答案 2 :(得分:3)

这是android支持库版本“26.0.0-beta2”

中的错误

使用:

compile 'com.android.support:appcompat-v7:24.2.1'

使用:

buildToolsVersion '26.0.0'

类路径

'com.android.tools.build:gradle:3.0.0-alpha8'

一切都应该正常。