Ich hatte auch dieses Problem mit meiner Android-App, abhängig von einigen meiner eigenen Android-Bibliotheken (mit Android Studio 3.0 und 3.1.1).
Immer wenn ich eine Bibliothek aktualisiert und zur App zurückgekehrt bin und eine Gradle-Synchronisierung ausgelöst habe, konnte Android Studio die Codeänderungen, die ich an der Bibliothek vorgenommen habe, nicht erkennen. Die Kompilierung funktionierte einwandfrei, aber Android Studio zeigte bei einigen Codes mit der lib rote Fehlerlinien.
Nach Nachforschungen stellte ich fest, dass gradle immer wieder auf eine alte kompilierte Version meiner Bibliotheken verweist. Wenn Sie zu yourProject / .idea / library / gehen, wird eine Liste der XML-Dateien angezeigt, die den Link zur kompilierten Version Ihrer Bibliotheken enthält. Diese Dateien beginnen mit Gradle__artifacts _ *. Xml (wobei * der Name Ihrer Bibliotheken ist).
Damit Android Studio die neueste Version Ihrer Bibliotheken verwenden kann, müssen Sie diese Gradle__artifacts _ *. Xml-Dateien löschen. Android Studio generiert sie neu und verweist auf die neueste kompilierte Version Ihrer Bibliotheken.
Wenn Sie dies nicht jedes Mal manuell tun möchten, wenn Sie auf "Gradle-Synchronisierung" klicken (wer würde das tun wollen ...), können Sie diese kleine Gradle-Aufgabe in die Datei build.gradle Ihrer App einfügen.
task deleteArtifacts {
doFirst {
File librariesFolderPath = file(getProjectDir().absolutePath + "/../.idea/libraries/")
File[] files = librariesFolderPath.listFiles({ File file -> file.name.startsWith("Gradle__artifacts_") } as FileFilter)
for (int i = 0; i < files.length; i++) {
files[i].delete()
}
}
}
Damit Ihre App diese Aufgabe immer ausführen kann, bevor Sie eine Gradle-Synchronisierung durchführen, müssen Sie nur zum Gradle-Fenster gehen, die Aufgabe "deleteArtifacts" unter yourApp / Tasks / other / suchen, mit der rechten Maustaste darauf klicken und "Execute" auswählen Vor der Synchronisierung "(siehe unten).

Jedes Mal, wenn Sie eine Gradle-Synchronisierung durchführen, muss Android Studio die neueste Version Ihrer Bibliotheken verwenden.