android studio 3.0错误:未找到样式属性'@android:attr / windowEnterAnimation'

时间:2017-10-31 10:52:26

标签: android android-studio-3.0

我已经按照迁移到android studio 3.0升级的步骤进行了操作。

的build.gradle

    flavorDimensions 'dimensionless'
  

d:\ r \商家\ projapp \ popuplibrary \建立\中间体\束\调试\ RES \值\ values.xml   错误:(28,5)错误:未找到样式属性'@android:attr / windowEnterAnimation'。
  C:\ Users \用户user.gradle \缓存\变换-1 \文件-1.1 \程序兼容性-v7-25.3.1.aar \ f7bb6db2aa55d14683d1c9ddd8d49e03 \ RES \值\ values.xml   错误:java.util.concurrent.ExecutionException:com.android.tools.aapt2.Aapt2Exception:AAPT2错误:检查日志以获取详细信息   
错误:任务执行失败':popuplibrary:processDebugAndroidTestResources'。   无法执行aapt

面对同样的问题但是apccompat库也在我的案例中创建了问题。

style attribute '@android:attr/windowEnterAnimation' not found


gradlewrapper:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

build.gradle app:

   productFlavors {
                dev {
                    applicationIdSuffix '.dev'
                    versionName "1.0"
                    versionNameSuffix '-dev'
                    }
qa {
                    applicationIdSuffix '.qa'
                    versionName "1.0"
                    versionNameSuffix '-qa'
                    }
}


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:25.3.1'
    compile 'com.android.support:design:25.3.1'
    compile 'com.android.support:cardview-v7:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
    //Butter Knife
    compile 'com.jakewharton:butterknife:8.7.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0'

    compile project(':popuplibrary')
}

4 个答案:

答案 0 :(得分:26)

migration guide for Android Gradle Plugin 3.0.0

中描述了此问题
  

错误使用@资源引用符号

     

当您省略或错误地放置资源引用符号(@)时,AAPT2现在会抛出构建错误。例如,考虑在指定样式属性时是否省略该符号,如下所示:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
  ...
  <!-- Note the missing '@' symbol when specifying the resource type. -->
  <item name="colorPrimary">color/colorPrimary</item>
</style>
     

构建模块时,AAPT2现在抛出以下构建错误:

ERROR: expected color but got (raw string) color/colorPrimary
     

此外,请考虑从android命名空间访问资源时是否错误地包含该符号,如下所示:

...
<!-- When referencing resources from the 'android' namespace, omit the '@' symbol. -->
<item name="@android:windowEnterAnimation"/>
     

构建模块时,AAPT2现在抛出以下构建错误:

Error: style attribute '@android:attr/windowEnterAnimation' not found

如果你没有犯下半部分描述的错误,那么也许应该归咎于appcompat-v7的旧版本。

好的

更新到更新的支持库,选择25.4.0或26.1.0或27.0.0。确保您匹配compileSdkVersion

注意:如果您选择更新为早于27.0.0的内容,则可能会遇到this issue

如果由于某种原因你遇到了25.3.1或更高版本,你可以disable AAPT2

  

如果您在使用AAPT2时遇到问题,可以通过在android.enableAapt2=false文件中设置gradle.properties并通过从命令行运行./gradlew --stop重新启动Gradle守护程序来禁用它。

答案 1 :(得分:1)

就我而言,我在build.gradle中删除/更新了thebuildToolsVersion "27.0.3"

答案 2 :(得分:0)

尝试在android / build.gradle中使用 subprojects {} 块,并设置主项目中最近使用的android compileSdkVersion和buildToolsVersion,以便子项目也使用这些版本。

示例

using (var engine = new SpeechRecognitionEngine(new CultureInfo("en-US"))) 
{
    engine.LoadGrammar(new Grammar("stock.cfg"));
    engine.SetInputToWaveFile("go-up.wav");
    var result = engine.Recognize();
}

答案 3 :(得分:0)

android.enableAapt2=false文件中添加gradle.properties可解决此问题。