android Canary 3.0 beta 5未知元素<library>找到

时间:2017-09-16 01:01:01

标签: android mopub

我试图添加mopub。但是当我这样做时,构建清单会添加一个库标签,然后说它不知道它是什么。如果我删除链接,一切正常。

compile('com.mopub:mopub-sdk:4.16.0@aar') {
    transitive = true
}

<library android:name="moat-mobile-app-kit" />

  

错误:(34)找到未知元素

     

错误:E:\网络\工作室\作品\应用\构建\中间体\舱单\全\活\调试\的AndroidManifest.xml:34   找到未知元素

     

错误:java.util.concurrent.ExecutionException:   com.android.builder.internal.aapt.AaptException:AAPT2链接失败:

     

错误:com.android.builder.internal.aapt.AaptException:AAPT2链接   失败:错误:任务执行失败   &#39;:应用程序:processLiveDebugResources&#39 ;.   无法执行aapt

5 个答案:

答案 0 :(得分:7)

我遇到这个问题,经过几次检查后我才能得出明确的合并结论,包括行

<library android:name="moat-mobile-app-kit" />

来自mopub avid和moat kit,因为新的android gradle插件不支持,现在最好的选择是通过编辑mopub依赖关系来禁用可见度测量,如下所述

compile('com.mopub:mopub-sdk:4.17.0@aar') {
    transitive = true
    exclude module: 'libAvid-mopub' // To exclude AVID
    exclude module: 'moat-mobile-app-kit' // To exclude Moat
}

答案 1 :(得分:7)

到目前为止,我找到的唯一解决方案是使用MoPub 4.15。

编辑:MoPub已确认此问题,他们不会在修复时给我一个ETA。

编辑:4.18仍然破碎。

编辑:我应该提到我现在使用4.19,Moat仍然被禁用并使用代码删除Moat,但我也必须在其他包含Moat的广告网络上执行此操作。因此,如果您遇到此问题,可能需要查看所有广告网络编译行。

编辑:根据MoPub,这是固定在4.20.0,它似乎对我有用。

答案 2 :(得分:5)

护城河更新似乎解决了这个问题。对我来说,这适当编译:

implementation 'com.mopub:mopub-sdk:4.19.0@aar'
implementation 'com.moat.analytics.mobile.mpub:moat-mobile-app-kit:2.4.1'

答案 3 :(得分:0)

我收到了Mopub的回复。

  

Android Studio 3使用Gradle 4,Gradle 4不赞成使用“compile”语句。因此,您需要使用“api”或“implementation”等关键字代替“compile”。另请参阅此StackFlow链接以获取更多信息。

链接here

答案 4 :(得分:0)

将存储库和依赖项保存在文件(build.gradle),不是两个文件,例如根构建文件的存储库,模块构建文件的依赖项

 repositories {
   // ... other project repositories
    jcenter() // includes the MoPub SDK and AVID library
    maven { url "https://s3.amazonaws.com/moat-sdk-builds" }
 }

 // ...

dependencies {
 // ... other project dependencies
 compile('com.mopub:mopub-sdk:4.16.0@aar') {
     transitive = true
  }
}