[JAVA] [Android] Warum beim Laden einer Bibliothek auf der Seite der Android-App ein Konfliktversionsfehler auftritt

Einführung

Bei der Entwicklung unter Android und beim Laden und Ausführen einer Bibliothek mit Gradle als häufigem Problem kann ein Versionskonfliktfehler von kotlin auftreten. Also Meinung

Ich habe ein wenig recherchiert, also werde ich es als Memo hinterlassen

Ursache

Es kann verschiedene Gründe geben, aber zuerst kann es passieren, wenn Sie mit der Kotlin-Version der Bibliothek in Konflikt stehen. In diesem Fall wissen Sie nicht, ob Sie die Verwendung der Bibliothek überhaupt aufgeben, eine ältere Version der Bibliothek verwenden oder die Kotlin-Version der Anwendung, die die Bibliothek enthält, aktualisieren und durch Ausprobieren lösen sollen. Ich mache es oft

Konflikt in der Kotlin-Bibliothek

Wenn die Kotlin-Bibliothek geladen wird, wird die Kotlin-Bibliothek auf der Anwendungsseite geladen. Die Größe der apk und die Anzahl der Methoden werden entsprechend erhöht. Vielleicht brauchst du Multi Dex.

Es scheint, dass ein Konflikt zwischen der auf der App-Seite geladenen Kotlin-Bibliothek und der Kotlin-Version auf der App-Seite besteht. Bitte beachten Sie die folgenden Informationen zur Verwendung von Gradle. Wenn es einen Konflikt mit der Kotlin-Version gibt, wird dieser mit der neuen Version überschrieben. Da dies das Standardverhalten ist, sollte es auch dann behoben werden, wenn Sie die Gradle-Datei so einstellen, dass sie nicht mit der neuesten Version überschrieben wird. (unbestätigt)

Verhalten im Konfliktfall https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html#org.gradle.api.artifacts.ResolutionStrategy:failOnVersionConflict()

Lösungen

Stellen Sie die gleiche Version wie die zuletzt implementierte Bibliothek auf der Anwendungsseite ein. Oder mehr können das Problem lösen. Wenn die Bibliotheks- und App-Entwicklung identisch sind, kann sie problemlos implementiert werden. In den meisten Fällen sollte die Bibliothek jedoch von einem anderen Unternehmen oder einer anderen Person implementiert werden. Daher kann es erforderlich sein, dass die Person, die die Bibliothek erstellt, immer ein Upgrade mit dem neuesten Kotlin durchführt und die Dokumentation dazu ermutigt, das neueste Kotlin zu verwenden.

Wenn die Bibliothek in Java anstelle von Kotlin implementiert ist, sollte dieses Problem nicht auftreten, da die Kotlin-Bibliothek nicht auf der Anwendungsseite geladen wird. Muss.

Recommended Posts

[Android] Warum beim Laden einer Bibliothek auf der Seite der Android-App ein Konfliktversionsfehler auftritt
Ich habe eine Taschenrechner-App für Android erstellt
Eine Erinnerung, wenn ein aapt.exe-Fehler auftritt
Meine Gedanken zur Zukunft [Gradle App Version ①]
Schienen <% = Ausdruck%> Warum im leeren Zustand kein Fehler auftritt
Holen Sie sich Ihre Versionsnummer in der Android-App
Ich habe eine Frage. Beim Abspielen eines Videos in Listview mit Android tritt ein Fehler auf.