AAPT2错误:在Android Studio升级后检查日志以获取详细信息

时间:2018-03-30 09:02:02

标签: android android-studio

我已经升级了我的Android Studio,因为我收到错误" AAPT2错误:检查日志以获取详细信息"

在互联网上,我找不到解决方案。

我的androidmanifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="ch.workouttracker"
    android:versionCode="1"
    android:versionName="1.0" >

    <!--
         The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
         Google Maps Android API v2, but you must specify either coarse or fine
         location permissions for the 'MyLocation' functionality. 
    -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="@string/google_maps_key" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".TrackActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".ProfileActivity"
            android:label="@string/title_activity_profile" >

        </activity>
        <activity
            android:name=".TrackCardioActivity"
            android:label="@string/title_activity_track_cardio">

        </activity>
        <activity
            android:name=".TrackWorkoutActivity"
            android:label="@string/title_activity_track_workout" >

        </activity>
        <activity
            android:name=".LogoutActivity"
            android:label="@string/title_activity_logout">

        </activity>
        <activity
            android:name=".SettingsActivity"
            android:label="@string/title_activity_settings" >

        </activity>
        <activity
            android:name=".DashbordActivity"
            android:label="@string/title_activity_dashboard" >

        </activity>
        <activity
            android:name=".CreatePlanActivity"
            android:label="@string/title_activity_create_plan" >

        </activity>
        <activity
            android:name=".CreateExerciseActivity"
            android:label="@string/title_activity_create_exercise" >

        </activity>
        <activity
            android:name=".EditActivity"
            android:label="@string/title_activity_edit" >

        </activity>
        <activity
            android:name=".LoginActivity"
            android:label="@string/title_activity_login" >

        </activity>
        <activity
            android:name=".WorkoutDetailActivity"
            android:label="@string/title_activity_workout_detail" >

        </activity>
        <activity
            android:name=".PlanDetailActivity"
            android:label="@string/title_activity_plan_detail" >

        </activity>
        <activity android:name=".CalendarActivity" >

        </activity>
        <activity android:name=".EditExerciseActivity">

        </activity>
    </application>
</manifest>

我尝试重新安装并降级android sdk。我删除了.gradle。我在android.enableAapt2=false

中设置了属性gradle.properties

我还能尝试什么?您需要哪些其他信息?

5 个答案:

答案 0 :(得分:4)

在将Android Studio更新为最新版本之后,我不久前遇到了这个问题。搜索了很长时间后,this回答是我的救星。

正如这个答案所暗示的那样,问题可能是项目中的XML文件混乱。您可以自己查找混乱的部分,或在终端中运行assembleDebug命令(如this),它可以找到应该修复的确切行。

答案 1 :(得分:1)

Based on Google's documentation:

If you are experiencing issues while using AAPT2, you can disable it by setting android.enableAapt2=false in your gradle.properties file and restarting the Gradle daemon by running ./gradlew --stop from the command line.

When you set the android.enableAapt2=false you have to restart the Gradle daemon. You should restart the Daemon and then Click on Sync Project with gradle file

中传递变量

还要确保您使用的是最新的buildToolsVersion

答案 2 :(得分:1)

我也遇到了同样的问题。通过更改build.gradle文件,如下所示,我解决了这个问题。 android {     compileSdkVersion 27     buildToolsVersion '27 .0.3'

defaultConfig {
    minSdkVersion 16
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
}

答案 3 :(得分:1)

我也按照Paila Khagesh的建议解决了这个问题。我有

compileSdkVersion 26 

targetSdkVersion 25

targetSdkVersion更改为26 后,同步gradle错误消失了。

答案 4 :(得分:0)

许多方法可以解决此问题!这是我们创建的,不知道为什么会发生。偶然地,我们将我们喜欢的color.xml文件粘贴到了styles.xml文件夹中。粘贴时我们没有警告,也没有继续设计应用程序。但是,当我们关闭该应用程序时,它需要在加载时进行重建,从而开始了乐趣。我们猜想解决方案可能是在关闭应用程序之前先构建,或者在构建或关闭更好之前先查看所有XML文件,然后再查看