所以,我是Android和Java的初学者 . 我刚开始学习 . 我今天在试用Intent时遇到了错误 .
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs
我在这里找到了一些解决方案并试图实现它们,但它没有用 .
这是我的build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.0"
defaultConfig {
applicationId "com.example.rohan.petadoptionthing"
minSdkVersion 10
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.0.0'
}
这是我的AndroidManifest:
<?xml version="1.0" encoding="utf-8"?>
package="com.example.rohan.petadoptionthing" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Second"
/>
<activity android:name=".third"/>
<activity android:name=".MainActivity"/>
</application>
这是我编码的第一周,如果这是一件非常愚蠢的话,我很抱歉 . 我真的很陌生,没有找到任何其他地方要问 . 对不起,如果我违反任何规则
22 回答
minium sdk版本应该与你正在使用的modules / lib相同 . 例如:你的模块min sdk版本是26,你的app min sdk版本是21它应该是相同的 .
从mainfest文件中删除
<activity android:name=".MainActivity"/>
. 正如您已将其定义为:所以,Manifest文件显示模棱两可 .
Open application manifest(AndroidManifest.xml) ,click on Merged Manifest.Check image
你可以在右列中查看错误,尝试解决错误 . 它可能会帮助一个有同样问题的人 .
我也遇到了同样的问题,经过大量研究后发现了解决方案:
例:
错误:任务':app:processDebugManifest'的执行失败 .
因此,通过使用版本25.3.1的appcompat,我们可以避免此错误
通过考虑以上几点,你将摆脱这个恼人的问题 . 你也可以查看我的博客https://wordpress.com/post/dhingrakimmi.wordpress.com/23
For me THIS works -
在
AndroidManifest.xml
中查找合并错误点击
AndroidManifest.xml
中的Merged Manifest您可以在右列中查看清单合并错误 . 它可能有助于解决这个问题 .
我遇到了同样的问题,我刚刚在manifest.xml中添加了一行,它对我有用 .
希望它会有所帮助 .
除了可用的解决方案,请同时检查 .
如果您在
AndroidManifest.xml
中设置了android:allowBackup="false"
,则其他依赖项中的android:allowBackup="true"
可能存在冲突 .Solution
根据@CLIFFORD P Y的建议,切换到
AndroidManifest.xml
中的Merged Manifest
. Android Studio会建议在AndroidManifest.xml
中的<application />
中添加tools:replace="android:allowBackup"
.在我的情况下,它显示错误,因为
<uses-permission>
元素中存在冗余 . 因此,请检查您的AndroidManifest.xml
文件 .Android Studio version is 3.0.1
Operating System is Windows 7
这是截图供参考 .
通常在清单中出现错误时发生 . 打开AndroidManifest.xml . 单击合并的清单选项卡 . 可以在那里看到错误 . 还包括那里提到的建议 . 当我在导入com.google.android.gms时出现类似问题时.maps.model.LatLng,它建议我在应用程序标记中包含工具:overrideLibrary =“com.google.android.gms.maps”,并且构建成功 .
我的情况我已经修好了
这个答案与OnSignal推送通知有关
在过去的几天里,我也遇到了同样的问题 . 但之后,经过大量的研究,我终于找到了解决方案 .
为了解决这个问题,您需要做的是:
1.检查项目的 build.gradle 文件和模块的 build.gradle 文件是否包含所有依赖项的相同版本 .
2.确保,您的项目的 compileSdkVersion , buildToolsVersion , minSdkVersion 和 targetSdkVersion 与您添加到项目中的 modules 或 libraries 中的项目相匹配 .
希望这可以帮助 .
如果在添加 Android Library Module 之后又出现此错误 .
您可以通过从 Android Library Module 的
AndroidManifest.xml
中简单删除android:label="@string/app_name"
来修复它在
AndroidManifest.xml
:在应用程序中,添加
tools:replace="android:icon, android:theme
和在Manifest根目录下,添加
xmlns:tools="http://schemas.android.com/tools
在
build.gradle
:从root用户添加
useOldManifestMerger true
打开你的gradle控制台,然后你看gradle建议你添加特定的行(如:tools:replace =“android:allowBackup”或tools:replace =“android:label”等) . 将该行添加到标记和同步gradle下的清单文件中,就是这样 .
只需在项目清单应用程序标记中添加以下代码即可...
在我的情况下,它发生在 Activity 标签内留下一些空 intent-filter
因此,只需删除它们即可解决问题 .
作为Android Studio的新手,就我而言,我已经将一个现有的项目从Eclipse迁移到了Android Studio,发现我的Manifest.xml中有一个活动的重复定义没有被Eclipse选中显示为Gradle错误 .
我通过Gradle Console(屏幕右下角)找到了这个 .
当我折射(使用SHIFT F6重命名)我们的文件中的字段名称并且它要求你在任何地方更改它时我发生了两次,我们没有注意改变名称到处都是 . 例如,如果Java类中有变量名“id”,则使用SHIFT F6重命名它 . 如果您没有注意下一个对话框,它将询问您将改变ID的任何其他地方,并勾选检查所有它将从新值更改布局文件中的所有ID .
这是非常简单的错误,只有在mainifest.xml文件中定义任何两次活动调用时才会发生
我正在使用
FirebaseUI Library
和Facebook SDK Library
,这导致了我的问题 .从here,我摆脱了这个问题 .
有了 FirebaseUI library 的 FirebaseUI library ,以前版本的Facebook SDK也是它的一部分 .
如果您使用的是 both 库,请 remove the Facebook SDK Library .
把它放在app模块build.gradle的末尾:
from this
补充Phan Van Linh的答案 . 我删除了这些行: