Ich versuche, Mopub hinzuzufügen. Wenn ich dies jedoch mache, fügt das Build-Manifest einen Bibliotheks-Tag hinzu und sagt dann, dass es nicht weiß, was es ist. Wenn ich den Link entferne, funktioniert alles gut.
compile('com.mopub:mopub-sdk:[email protected]') {
transitive = true
}
<library Android:name="moat-mobile-app-kit" />
Fehler: (34) unbekanntes Element gefunden
Fehler: E:\Web\Studio\Opus\app\build\intermediates\manifests\full\live\debug\AndroidManifest.xml: 34 unbekanntes Element gefunden
Fehler: Java.util.concurrent.ExecutionException: com.Android.builder.internal.aapt.AaptException: AAPT2-Link fehlgeschlagen:
Fehler: com.Android.builder.internal.aapt.AaptException: AAPT2-Link fehlgeschlagen: Fehler: Ausführung fehlgeschlagen für Aufgabe ': app: processLiveDebugResources' . Aapt konnte nicht ausgeführt werden
Ich erlebe dieses Problem, nach mehreren Inspektionen kann ich nur zu dem Schluss kommen, dass eine offensichtliche Fusion die Linie einschließt
<library Android:name="moat-mobile-app-kit" />
da dies im neuen Android-Gradle-Plugin nicht unterstützt wird, sollten Sie die Sichtbarkeitsmessung deaktivieren, indem Sie die Mopub-Abhängigkeitslinie wie unten definiert bearbeiten
compile('com.mopub:mopub-sdk:[email protected]') {
transitive = true
exclude module: 'libAvid-mopub' // To exclude AVID
exclude module: 'moat-mobile-app-kit' // To exclude Moat
}
Die einzige Lösung, die ich bisher gefunden habe, ist MoPub 4.15 zu verwenden.
Edit: MoPub hat das Problem bestätigt und sie gaben mir keine ETA für einen Fix.
Edit: 4.18 noch defekt.
Edit: Ich sollte erwähnen, dass ich 4.19 jetzt mit deaktiviertem Moat verwende und den Code zum Entfernen von Moat verwende, aber ich muss das auch in anderen Werbenetzwerken tun, die auch Moat enthalten. Wenn Sie also dieses Problem haben, möchten Sie vielleicht alle Compile-Zeilen Ihres Ad-Netzwerks überprüfen.
Edit: Laut MoPub ist dies auf 4.20.0 festgelegt und scheint für mich zu funktionieren.
Es gibt ein Wassergraben-Update, das scheinbar das Problem löst. Für mich kompiliert das richtig:
implementation 'com.mopub:mopub-sdk:[email protected]'
implementation 'com.moat.analytics.mobile.mpub:moat-mobile-app-kit:2.4.1'
Ich habe eine Antwort von Mopub erhalten.
Android Studio 3 verwendet Gradle 4, und Gradle 4 lehnt die Verwendung der Anweisung "compile" ab. Daher müssen Sie Schlüsselwörter wie "API" oder "Implementierung" anstelle von "Kompilieren" verwenden. Bitte verweisen Sie auch auf diesen StackFlow-Link, um weitere Informationen zu erhalten.
link hier
Fügen Sie dies Ihren Abstufungsabhängigkeiten hinzu.
exclude module: 'moat-mobile-app-kit'
, wenn Sie Mopub SDK <= 4.18.0 verwenden.
Es hat für mich funktioniert.
Wenn Sie 4.20.0 verwenden, wurde das Problem behoben https://developers.mopub.com/docs/Android/changelog/#version-4200-february-20-2018
verwahren Sie Repositorys und Abhängigkeiten auf einer Datei (build.gradle), und nicht zwei Dateien , wie Repositorys in der Root-Build-Datei, Abhängigkeiten in der Modul-Build-Datei
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:[email protected]') {
transitive = true
}
}