webentwicklung-frage-antwort-db.com.de

Android Studio 2.3 Beta 1 + Support 25.1.0 = Vorschau defekt

Android Studio 2.3 Canary 3. Unterstützungsbibliotheken 25.1.0.

Layoutvorschauen sind total kaputt. Alles, das eine unterstützungsbezogene Ansicht enthält, scheint während der Vorschau zu unterbrechen.

In allen Fällen ist dies der Anfang des Stapels:

Exception Details Java.lang.NoSuchFieldError: ViewBackgroundHelper   
at Android.support.v7.widget.AppCompatBackgroundHelper.loadFromAttributes(AppCompatBackgroundHelper.Java:46)   
at Android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.Java:63)   
at Android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.Java:56)
....

.. Usw.

Egal wie das Layout ist, ich bekomme jetzt dieses blutige ViewBackgroundHelper-Problem. Anscheinend spielt es keine Rolle, was für ein Layout das ist oder welche Ansichten darin enthalten sind. Alles, was AppCompat durchzustehen scheint, trifft diesen Fehler in der Vorschau.

Habe das noch nie gesehen. Zuvor hatte Android Studio 2.3 Canary 2 + Support-Bibliotheken 25.0.1.

Es scheint so, als wäre es einfach nicht möglich jemals Android Studio oder dessen Support-Bibliotheken zu aktualisieren, ohne Stunden damit zu verbringen, oder?

Danke für alle Hinweise, danke-

UPDATE

Sieht aus wie ich nicht der einzige bin. Es wurde ein Fehler gefunden, der hier protokolliert wurde und von vielen Leuten bereits angezeigt wurde:

https://code.google.com/p/Android/issues/detail?id=230183

UPDATE 2

Immer noch ein Problem mit AS 2.3 Beta 1. Meine Layouts werden immer noch nicht angezeigt. Überall derselbe Java.lang.NoSuchFieldError: ViewBackgroundHelper-Fehler.

21
Matthew Housser

Alles funktioniert jetzt.

  1. Ich habe heute ein Upgrade auf das neueste Android Studio: 2.3 Beta 3 durchgeführt
  2. Ich wurde aufgefordert, auf den neuesten com.Android.tools.build:gradle:2.3.0-beta3 zu aktualisieren.

Neu gestartet, ungültig gemacht, neu aufgebaut; Im Vorschaubereich wird erstmals nach 6 Wochen alles perfekt gerendert .

Sieht aus, als hätten sie es behoben. Zum Schluss .

5
Matthew Housser

Laut dem Issuetracker ab dem 10. Januar 2017:

https://code.google.com/p/Android/issues/detail?id=230183

Für diejenigen, die das Gradle-Plugin 2.3.0-beta1 verwenden, können Sie Den Build-Cache durch Hinzufügen deaktivieren

Android.enableBuildCache=false

in Ihre gradle.properties-Datei und lassen Sie uns wissen, ob dadurch das Problem für Sie behoben wird. Nachdem Sie die Zeile zu Ihren gradle.properties hinzugefügt haben, erstellen Sie bitte Das Projekt neu.

Vielen Dank.

Hat sich bewährt, um das Problem für einige Benutzer zu lösen.

6
Tim Malseed

Ich habe die Ausgabe auf dem Tracker abgelegt. Andere Teilnehmer haben festgestellt, dass das Problem durch das Entfernen einiger anderer Nicht-Android-Bibliotheksabhängigkeiten behoben wird. Darauf basierend habe ich eine Lösung gefunden (aus dem Thread herausgegeben):

Weitere Informationen nach weiteren Untersuchungen:

Android Studio 2.2.3
Build # AI-145.3537739, gebaut am 2. Dezember 2016
JRE: 1.8.0_76-release-b03 AMD64
JVM: OpenJDK 64-Bit-Server VM von JetBrains s.r.o

Unterstützungsbibliotheken: 25.1.0
Build-Tools: 25.0.2

Nachdem ich dies in der obigen Studioversion (2.2.3 Stable) reproduzieren konnte, entfernte ich andere Bibliotheksabhängigkeiten auf der Grundlage der Informationen, die von anderen in diesem Thread bereitgestellt wurden. Nachdem die Kalligraphiebibliothek ( https://github.com/chrisjenx/Calligraphy ) und der zugehörige Code entfernt wurden, funktionierte die Layoutvorschau wieder ordnungsgemäß.

Interessanterweise konnte ich die Kalligraphie-Bibliothek erneut hinzufügen und die Layout-Vorschau funktionierte weiter. Vielleicht deutet dies auf ein Caching-Problem mit dem Android Gradle-Plugin hin? 

Für andere, die dieses Problem haben, empfehle ich Folgendes:
1. Lokalisieren Sie die Bibliothek, die das Problem verursacht
2. Entfernen Sie die Bibliotheksabhängigkeit und den zugehörigen Code
3. Mach eine komplette Reinigung und baue
4. Überprüfen Sie, ob die Layoutvorschau funktioniert
5. Fügen Sie die Bibliotheksabhängigkeit erneut hinzu
6. Mach eine komplette Reinigung und baue
7. Überprüfen Sie, ob die Layoutvorschau funktioniert

Hinweis: Ich hatte den Verdacht, dass Kalligrafie das Problem verursacht hat, weil es auf ein benutzerdefiniertes XML-Attribut namens "fontPath" sowie einige Kontextmanipulationen angewiesen ist. Wenn Sie Bibliotheken haben, die Manipulationen unter der Haube ausführen, sollten Sie diese zuerst entfernen.

2
Jeff Jones

Ändern Sie Ihren AppTheme-Stil folgendermaßen:

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
</style>
1
Darush

Ich habe eine Lösung das Problem ist nicht die Version von Android Studio.

Das Problem ist, dass die Gradle-Version wieder auf die stabile Version 2.2.3 zurückgeht, die nach einigen Tests für mich funktioniert. Es ist ein Fehler in der Beta-Beta-Version, und es wird bereits berichtet, dass er google ist.

0
juanpaternina

Ich habe dieses Problem in den nächsten Schritten gelöst

  • Entfernen Sie <Projekt>/<Modul>/build/build/intermediates/exploded-aar
  • Projekt neu erstellen
  • Vergewissern Sie sich, dass es nur eine Versionsunterstützungsbibliothek im Explosionsbereich gibt
0
Takao Sumitomo