将Android Studio更新到3.1.2后,我收到“无法加载带有未知错误的AppCompat ActionBar”。

时间:2018-06-07 08:34:59

标签: android android-studio

我尝试在stackoverflow上查找其他类似的问题,他们建议我们改变版本的“buildToolsVersion”,但我在gradle文件中看不到这样的字。

我的Gradle文件(PROJECT): -

buildscript {

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


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

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

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

我的build.gradle(模块:app):这是我的第二个gradle文件

     apply plugin: 'com.android.application'

 android {
 compileSdkVersion 28
 defaultConfig {
    applicationId "com.example.dhruv.testhello"
    minSdkVersion 15
    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'
    }
    }
 }

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'
implementation 'com.android.support.constraint:constraint-layout:1.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso- 
core:3.0.2'
 }

9 个答案:

答案 0 :(得分:20)

我遇到了同样的问题。我搜索了这么多,我终于发现appcompat-v7:28.0.0-alpha3在Android Studio的“设计视图”部分有一些错误。

因此,我建议将com.android.support:appcompat-v7:28.0.0-alpha3更改为com.android.support:appcompat-v7:28.0.0-alpha1版本,然后点击文件 - >使高速缓存/重新启动无效。 Volla一切都很好。

当然,您应该可以通过互联网访问下载com.android.support:appcompat-v7:28.0.0-alpha1

答案 1 :(得分:2)

我在Hossein Seifi的回复中得到了帮助,但有了改动

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

implementation 'com.android.support:design:28.0.0-alpha1'

然后点击文件 - >使高速缓存/重新启动无效

答案 2 :(得分:2)

更新2

如您在support 28.0.0 release notes中所见。

  

这将是android.support下的最后一个功能版本   包装,鼓励开发人员迁移到AndroidX 1.0.0

从现在起,Android将不再更新支持库。因此,建议您migrate to androidx在不赞成使用支持库之前。

更新

支持28.0.0已发布,因此您可以使用此稳定版本。

implementation 'com.android.support:design:28.0.0'

我建议不要使用Alpha版本,因为Alpha,Beta版本具有测试库的错误。

答案 3 :(得分:0)

模块应用程序gradle文件如下所示...在您的文件中缺少 buildToolsVersion ,添加此文件可能对您有所帮助

  apply plugin: 'com.android.application'

 android {
  //changes
  compileSdkVersion 26
buildToolsVersion "27.0.3"
 defaultConfig {
    applicationId "com.example.dhruv.testhello"
   minSdkVersion 24
    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'
    }
    }
 }

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])

//changes
compile 'com.android.support:appcompat-v7:26.0.2'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso- 
core:3.0.2'
 }

答案 4 :(得分:0)

在styles.xml中,

将主题从Theme.AppCompat.Light.DarkActionBar更改为Base.Theme.AppCompat.Light.DarkActionBar对我有用。

答案 5 :(得分:0)

在回答此问题时, Android Studio 3.1.4 已退出 Android支持28.0.0候选发布版(潜在最终版,测试版),请进行更新。 好吧,这是一个肯定适合您的配置。

targetSdkVersion 28
com.android.support:*:28.0.0-rc01

其中*是资源类型。

答案 6 :(得分:0)

打开res>values>styles.xml,在这里您会找到一行:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

将行替换为:

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">

这意味着:添加单词“ Base”。起始父主题的名称。

答案 7 :(得分:-1)

是的,它的工作,

实施&#39; com.android.support:design:28.0.0-alpha3&#39; 到

实施&#39; com.android.support:design:28.0.0-alpha1&#39;

之后到达File并点击 - &gt;使高速缓存/重新启动无效

答案 8 :(得分:-1)

打开,res->值-> styles.xml,在这里您将找到如下一行:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

将其更改为:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">

换句话说,将DarkActionBar更改为NoActionBar