最近刚换公司,eclipse项目,我要导入到AS中,话说我都1年多没做过这种事情了,话说还有公司用eclipse吗?一顿报错,一顿该。PS:最少我闹心的是,竟然编码形式是GBK.
1.Suggestion: add 'tools:replace="android:icon"' to element
AndroidManifest.xml:21:9-42 Error:Attribute application@icon value=(@drawable/ic_lauch) from AndroidManifest.xml:21:9-42is also present at [xx.xx:xx:unspecified] AndroidManifest.xml:13:9-45 value=(@drawable/ic_launcher).Suggestion: add 'tools:replace="android:icon"' toelement at AndroidManifest.xml:18:5-144:19 to override.
AndroidManifest.xml:24:9-44 Error:Attribute application@theme value=(@style/AppBaseTheme) from AndroidManifest.xml:24:9-44is also present at [xx.xx:xx:unspecified] AndroidManifest.xml:15:9-40 value=(@style/AppTheme).Suggestion: add 'tools:replace="android:theme"' toelement at AndroidManifest.xml:18:5-144:19 to override.
原因:
AS的Gradle插件默认会启用Manifest Merger Tool,若Library项目中也定义了与主项目相同的属性(例如默认生成的android:icon和android:theme),则此时会合并失败,并报上面的错误。
解决方法有以下2种:
方法1:在Manifest.xml的application标签下添加tools:replace="android:icon, android:theme"(多个属性用,隔开,并且记住在manifest根标签上加入xmlns:tools="http://schemas.android.com/tools",否则会找不到namespace哦)
方法2:在build.gradle根标签上加上useOldManifestMerger true 这方法有的版本不适用(网上提供的方法,未实践)
2、安装apk的时候报错,提示信息如下:
Failed to finalize session : INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
解决方案:
android{ splits{ abi {enable true reset() include'x86','armeabi-v7a' universalApk true}}