错误:任务':app:processDebugManifest'的执行失败。清单合并因多个错误而失败,请参阅日志

时间:2016-10-06 14:05:31

标签: java android build.gradle

我的代码之前正在编译但已停止工作并且正在发出此错误

Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs

日志

  

java.lang.RuntimeException:活动名称不能为空。在   com.android.tools.idea.model.MergedManifest $ ActivityAttributes。(MergedManifest.java:579)     在   com.android.tools.idea.model.MergedManifest.syncWithReadPermission(MergedManifest.java:418)     在   com.android.tools.idea.model.MergedManifest.access $ 000(MergedManifest.java:55)     在   com.android.tools.idea.model.MergedManifest $ 1.run(MergedManifest.java:331)     在   com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:945)     在   com.android.tools.idea.model.MergedManifest.sync(MergedManifest.java:328)     在   com.android.tools.idea.model.MergedManifest.getActivities(MergedManifest.java:464)     在   com.android.tools.idea.run.activity.DefaultActivityLocator.lambda $ computeDefaultActivity $ 97(DefaultActivityLocator.java:78)     在   com.intellij.openapi.project.DumbService $ 1.run(DumbService.java:89)

我的清单

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:header=".MyApplication"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:header=".ui.MainActivity"
        android:label="@string/app_name"
        android:theme="@style/AppTheme.NoActionBar">
        <intent-filter>
            <action android:header="android.intent.action.MAIN" />

            <category android:header="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:header=".ui.ResponseActivity"
        android:label="@string/title_item_detail"
        android:parentActivityName=".ui.MainActivity"
        android:theme="@style/AppTheme.NoActionBar">
        <meta-data
            android:header="android.support.PARENT_ACTIVITY"
            android:value=".ui.MainActivity" />
    </activity>
</application>

这可能是什么原因?

2 个答案:

答案 0 :(得分:1)

将此用作主要活动,因为需要name字段来标识不是header的活动,因此请将每个header替换为name字段

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

而不是

<intent-filter>
    <action android:header="android.intent.action.MAIN" />

    <category android:header="android.intent.category.LAUNCHER" />
</intent-filter>

所以它会

<activity
    android:name=".ui.MainActivity"
    android:label="@string/app_name"
    android:theme="@style/AppTheme.NoActionBar">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

也为其他活动做同样的事情

答案 1 :(得分:0)

您必须在每个活动的清单文件的活动标记中写入android:name=".ui.activityName"

希望这有帮助!