Auf dieser Seite werden bekannte Probleme Android Studio Koala- und Android-Gradle-Plug-in 8.5.0 Wenn ein Problem auftritt, das noch nicht aufgeführt ist kannst du hier einen Programmfehler melden.
Upgrade auf Vorschau durchführen:Alle Versionen von Android Studio und Android Ziel des Gradle-Plug-ins ist es, die Stabilität und Leistung zu verbessern und neue Funktionen hinzuzufügen. Lade die App herunter und installiere sie, um die Vorteile zukünftiger Versionen zu nutzen Vorschau von Android Studio
Bekannte Probleme mit Android Studio
In diesem Abschnitt werden bekannte Probleme beschrieben, die in der neuesten stabilen Version von Android Studio
Im Firebase Assistant-Fenster wird eine Fehlermeldung angezeigt
Wenn im Firebase Assistant-Fenster (im Hauptmenü „Tools“ > „Firebase“) eine Fehlermeldung angezeigt wird, die Caches ungültig machen und Android Studio neu starten, um den Fehler zu beheben.
Isolieren einer Ansicht mit Layout Inspector nicht möglich
Die Möglichkeit, eine Ansicht mithilfe der eingebetteten Layout Inspector ist vorübergehend nicht verfügbar. Wir arbeiten daran, dieses Problem in einer zukünftigen Version zu beheben.
Nicht alle Zusammensetzungsknoten können mit dem Layout Inspector inspiziert werden
Wenn Sie feststellen, dass nicht alle Compose-Knoten überprüft werden können, Layout Inspector: Das liegt wahrscheinlich an einem Programmfehler, der in Compose-Version 1.5.0-alpha04 behoben wurde. Bei Problemen mit stellen Sie sicher, dass Sie ein Upgrade auf Compose-Version 1.5.0-alpha04 ausführen oder höher liegen.
Fehler beim Rendern der Schreibvorschau
Wenn Sie mit Android Studio Chipmunk beginnen,
java.lang.NoSuchFieldError: view_tree_saved_state_registry_owner
oder
java.lang.ClassNotFoundException: androidx.savedstate.R$id
im Bereich „Probleme“
müssen Sie eine debugImplementation
-Abhängigkeit
androidx.lifecycle:lifecycle-viewmodel-savedstate
.
Wenn Sie java.lang.NoSuchFieldError: view_tree_lifecycle_owner
in der
im Bereich „Probleme“ eine debugImplementation
-Abhängigkeit
androidx.lifecycle:lifecycle-runtime
.
Wenn Sie java.lang.NoClassDefFoundError: Could not initialize class androidx.customview.poolingcontainer.PoolingContainer
oder
java.lang.NoClassDefFoundError: androidx/customview/poolingcontainer/PoolingContainerListener
müssen Sie im Bereich „Probleme“ eine debugImplementation
-Abhängigkeit angeben,
androidx.customview:customview-poolingcontainer
.
Fehler bei Verwendung unterschiedlicher Passwörter für Schlüssel und Schlüsselspeicher
Ab Version 4.2 läuft Android Studio jetzt unter JDK 11. Dieses Update führt zu einer Änderung des zugrunde liegenden Verhaltens in Bezug auf Signaturschlüssel.
Wenn Sie auf der Seite Build > Generieren signiertes Bundle / APK und versuchen, die App-Signatur für ein App Bundle oder ein APK haben, kann die Eingabe unterschiedlicher Passwörter für Schlüssel und Schlüsselspeicher dazu führen, dass folgenden Fehler:
Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores
Um dieses Problem zu umgehen, geben Sie für den Schlüssel und keystore.
Android Studio startet nach der Installation von Version 4.2 nicht mehr
Studio versucht, vorherige .vmoptions und bereinigen sie sie, damit sie mit der automatischen Speicherbereinigung zusammenarbeiten, die von JDK 11. Wenn dieser Vorgang fehlschlägt, wird die IDE für bestimmte Nutzer möglicherweise nicht gestartet, Benutzerdefinierte VM-Optionen in der .vmoptions-Datei festlegen
Sie können dieses Problem umgehen, indem Sie die benutzerdefinierten Optionen auskommentieren. in .vmoptions (mit dem Rautenzeichen "#") hinzu. Die .vmoptions-Datei kann von an den folgenden Orten gefunden:
Windows
C:\Users\YourUserName\AppData\[Local|Roaming]\Google\AndroidStudio4.2\studio64.exe.vmoptions
macOS
~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions
Linux
~/.config/Google/AndroidStudio4.2/studio64.vmoptions
Wenn Studio auch nach dieser Problemumgehung nicht gestartet wird, gehen Sie so vor: Siehe Studio wird nach dem Upgrade nicht gestartet unten.
Apps, die Database Inspector verwenden, stürzen im Android 11-Emulator ab
Apps, die den Database Inspector verwenden, können unter Android 11 abstürzen Emulator. In Logcat wird ein Fehler wie der folgende angezeigt:
Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
Um dieses Problem zu beheben, aktualisiere deinen Android 11-Emulator auf Version 9 oder höher, indem du indem Sie Tools > SDK-Manager. Klicken Sie auf dem Tab SDK-Plattformen Paketdetails anzeigen und wählen Sie Version 9 oder höher von den Android 11-Emulator herunter.
Studio startet nach dem Upgrade nicht
Wenn Studio nach einem Upgrade nicht gestartet wird, kann das an einer ungültigen URL liegen. Android Studio-Konfiguration, die aus einer früheren Version von Android Studio importiert wurde oder ein inkompatibles Plug-in. Um das Problem zu umgehen, löschen Sie Sicherungszwecken) das folgende Verzeichnis, je nach Android Studio-Version und Betriebssystem und starten Sie Android Studio neu. Dadurch wird Android zurückgesetzt Studio in den Standardzustand versetzt, wobei alle Drittanbieter-Plug-ins entfernt wurden.
Für Android Studio 4.1 und höher:
Windows:
%APPDATA%\Google\AndroidStudio<version>
Beispiel:C:\Users\your_user_name\AppData\Roaming\Google\AndroidStudio4.1
macOS:
~/Library/Application Support/Google/AndroidStudio<version>
Beispiel:~/Library/Application Support/Google/AndroidStudio4.1
Linux:
~/.config/Google/AndroidStudio<version>
und~/.local/share/Google/AndroidStudio<version>
Beispiel:~/.config/Google/AndroidStudio4.1
und~/.local/share/Google/AndroidStudio4.1
Für Android Studio 4.0 und frühere Versionen:
Windows:
%HOMEPATH%\.AndroidStudio<version>\config
Beispiel:C:\Users\your_user_name\.AndroidStudio3.6\config
macOS:
~/Library/Preferences/AndroidStudio<version>
Beispiel:~/Library/Preferences/AndroidStudio3.6
Linux:
~/.AndroidStudio<version>/config
Beispiel:~/.AndroidStudio3.6/config
Beachten Sie, dass das Konfigurationsverzeichnis für Canary- und Betaversionen von Android
Studio kostet PreviewX.Y
statt X.Y
für den
<version>
Beispiel: Android
Canary-Builds von Studio 4.1 verwenden AndroidStudioPreview4.1
anstelle der
Verzeichnis AndroidStudio4.1
, das für Releasekandidaten und die stabile Version verwendet wird
Veröffentlichungen.
Kompilierungsproblem in Kotlin-Multiplattform-Projekten
Kompilierungsfehler können im Kotlin-MPP-Code aufgrund fehlender Symbole auftreten. Das Problem sollte durch ein Upgrade des Kotlin-Plug-ins auf Version 1.4 behoben werden.
Schlüsselzuordnungskonflikte unter Linux
Unter Linux stehen bestimmte Tastenkombinationen in Konflikt mit der standardmäßigen Linux-Tastatur und denen gängiger Fenstermanager wie KDE und GNOME. Diese in Konflikt stehenden Tastenkombinationen funktionieren in Android Studio möglicherweise nicht wie erwartet.
Weitere Informationen zu diesem Problem und mögliche Problemumgehungen finden Sie hier: finden Sie im Fehler-Tracker von IntelliJ.
Kleiner UI-Text unter ChromeOS
Unter ChromeOS kann Text viel kleiner erscheinen als in früheren Versionen. Zur Arbeit Um das Problem zu umgehen, gehen Sie so vor:
- Öffnen Sie das Fenster Einstellungen, indem Sie auf Datei > Einstellungen
- Wählen Sie Darstellung und Verhalten > Darstellung.
- Wählen Sie Benutzerdefinierte Schriftart verwenden aus.
- Schrift vergrößern
- Gehen Sie im Fenster Einstellungen zu Editor > Schriftart:
- Schrift vergrößern
- Klicken Sie auf OK.
Codebearbeitung
In diesem Abschnitt werden bekannte Probleme im Zusammenhang mit dem Code-Editor beschrieben.
Eingefrorene Tastatureingabe – "iBus" Probleme unter Linux
Es gibt einige bekannte Interaktionen zwischen dem iBus-Daemon unter Linux und Android Studio. In einigen reagiert die IDE nicht mehr auf Tastatureingaben oder beginnt mit der Eingabe zufällige Zeichen. Dieser Fehler wird durch eine fehlende Synchronisierung ausgelöst. zwischen iBus und XLib und AWT und wurde bereits vorgelagert an JetBrains und iBus. Es gibt drei aktuelle Behelfslösungen für dieses Problem:
- Problemumgehung 1: Erzwingen Sie iBus in den synchronen Modus. Vor dem Start von Android
Studio, führen Sie in der Befehlszeile den folgenden Befehl aus:
$ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd
- Problemumgehung 2: Deaktivieren Sie die iBus-Eingabe in Android Studio. So deaktivieren Sie die iBus-Eingabe
nur für Android Studio verwenden, führen Sie folgenden Befehl in der Befehlszeile aus:
$ XMODIFIERS= ./bin/studio.sh
Durch diese Problemumgehung werden nur die Eingabemethoden für Android Studio deaktiviert, nicht und allen anderen Anwendungen, die Sie ausführen. Beachten Sie, dass beim Neustart des -Daemon, während Android Studio ausgeführt wird (z. B. durch Ausführen vonibus-daemon -rd
), deaktivieren Sie die Eingabemethoden für alle Anwendungen und kann auch die JVM von Android Studio mit einem Segmentierungsfehler. - Problemumgehung 3: Überprüfen Sie die Verknüpfungsbindungen, um sicherzustellen, dass die
Tastenkombination für die nächste Eingabe nicht auf Strg + Leertaste eingestellt ist, da hier
die Verknüpfung zur Codevervollständigung in Android Studio. Ubuntu 14.04 (Trusty)
Super+Leertaste ist die Standard-Tastenkombination, aber die Einstellungen aus dem vorherigen
Versionen möglicherweise noch verfügbar sind. Führen Sie zum Prüfen der Verknüpfungsbindungen den folgenden Befehl aus:
ibus-setup
in die Befehlszeile, um das Fenster mit den IBus-Einstellungen zu öffnen. Aktivieren Sie unter Tastenkombinationen die Option Nächste Eingabemethode. Falls ja auf Strg+Leertaste einstellen, ändern Sie es in Super+Leertaste oder eine andere Tastenkombination von die gewünschte Option auswählen.
Projektkonfiguration
In diesem Abschnitt werden bekannte Probleme im Zusammenhang mit der Projektkonfiguration und Gradle beschrieben. synchronisieren.
Gradle-Synchronisierung fehlgeschlagen: Defekte Pipe
Das Problem ist, dass der Gradle-Daemon versucht, IPv4 anstelle von IPv6 zu verwenden.
- Problemumgehung 1: Unter Linux fügen Sie Folgendes in Ihr
~/.profile
- oder~/.bash_profile
:export _JAVA_OPTIONS="-Djava.net.preferIPv6Addresses=true"
- Behelfslösung 2: in Android Studio in vmoptions .
Datei
ändere die Zeile
-Djava.net.preferIPv4Addresses=true
in-Djava.net.preferIPv6Addresses=true
Weitere Informationen finden Sie in der Netzwerk-IPv6-Nutzer Anleitung.
„Peer nicht authentifiziert“ Fehler bei der Gradle-Synchronisierung oder dem SDK Manager
Die Ursache für diesen Fehler ist ein fehlendes Zertifikat in
$JAVA_HOME/jre/lib/certificates/cacerts
Fahre fort, um diese Fehler zu beheben
wie folgt:
- Wenn Sie sich hinter einem Proxy befinden, versuchen Sie, eine direkte Verbindung herzustellen. Wenn die direkte
funktioniert, müssen Sie zum Herstellen einer Verbindung über den Proxy
Verwenden Sie
keytool
, um der Datei "cacerts" das Zertifikat des Proxyservers hinzuzufügen. - Installieren Sie ein unterstütztes, unverändertes JDK noch einmal. Es gibt eine
bekanntes Problem
die Ubuntu-Nutzer betrifft, was zu einer
/etc/ssl/certs/java/cacerts
Um dieses Problem zu umgehen, führen Sie den Geben Sie Folgendes in die Befehlszeile ein:sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure
Wird bereitgestellt
In diesem Abschnitt werden bekannte Probleme bei der Bereitstellung Ihrer App auf einem verbundenen .
[Nur Mac OS] Inkrementelle Updates werden nicht angewendet, da ein Problem mit der Überwachung von Gradle-Dateien bei Projekten unter /System/Volumes/Data
vorliegt.
Das Gradle-Problem 18149 betrifft
Android-Gradle-Plug-in in der Version 7.0 und höher, da Gradle ab Version 7.0 erforderlich ist. Ab Gradle 7.0 ist die Dateibeobachtung standardmäßig aktiviert.
Wenn du Mac OS verwendest und dein Projekt gespeichert ist unter
/System/Volumes/Data
, werden Dateiänderungen bei der Gradle-Dateiüberwachung nicht korrekt nachverfolgt.
Dies führt dazu, dass das Build-System
keine Dateiänderungen sieht und
Aktualisieren Sie daher die APKs nicht. Mit dem Code für die inkrementelle Bereitstellung
nichts, da der lokale APK-Status mit dem auf dem Gerät identisch ist.
Sie können dieses Problem umgehen, indem Sie das Verzeichnis Ihres Projekts in das Nutzerkonto Ihres Nutzers verschieben
d. h. unter /Users/username
. Das Build-System wird dann
ordnungsgemäß über Dateiänderungen durch Gradle-Datei-Überwachung und inkrementelle
werden übernommen.
Android-Emulator HAXM unter macOS High Sierra
Der Android-Emulator an Für macOS High Sierra (10.13) ist HAXM 6.2.1 oder höher erforderlich Kompatibilität und Stabilität mit macOS. macOS 10.13 hat jedoch mehr zur Installation von Kernel-Erweiterungen wie HAXM. Du brauchst um die Installation der Kernel-Erweiterung selbst manuell zuzulassen. Gehen Sie dazu so vor:
- Installieren Sie zuerst die neueste Version von HAXM über die SDK-Manager.
- Unter macOS: Gehen Sie zu Systemeinstellungen > Sicherheit und Datenschutz.
Wenn Sie eine Benachrichtigung sehen, dass Systemsoftware des Entwicklers "Intel Corporation" Apps“ das Laden blockiert wurde, klicken Sie auf Zulassen:
Weitere Informationen und Problemumgehungen finden Sie unter <ph type="x-smartling-placeholder"></ph> dieser Apple-Webseite und Problem 62395878.
Änderungen übernehmen
In diesem Abschnitt werden bekannte Probleme im Zusammenhang mit der Anwendung Änderungen.
Neuer App-Name nicht angewendet
Wenn Sie Ihre App umbenennen und dann versuchen, diese Änderung anzuwenden, kann es sein, dass der aktualisierte Name
nicht berücksichtigt werden. Klicken Sie auf Ausführen, um dieses Problem zu umgehen.
um Ihre Anwendung noch einmal bereitzustellen und Ihre Änderungen zu sehen.
Problem in Android Runtime löst Fehler aus
Wenn Sie ein Gerät mit Android 8.0 oder 8.1 verwenden,
„VERIFICATION_ERROR“ wenn bestimmte Änderungen vorgenommen werden sollen.
vor allem, wenn Sie Kotlin verwenden. Diese Meldung wird durch ein Problem mit dem
Android Runtime, die in Android 9.0 und höher behoben wurde. Obwohl das Problem
dazu führt, dass die Änderungen nicht übernommen werden, können Sie trotzdem noch die Option Ausführen auswählen.
um die Änderungen zu sehen. Wir empfehlen jedoch ein Upgrade der
Android 9.0 oder höher installiert ist.
Fehlerbehebung und Tests
In diesem Abschnitt werden bekannte Probleme beim Debugging und Testen Ihrer App beschrieben.
JUnit testet fehlende Ressourcen im Klassenpfad, wenn sie über Android Studio ausgeführt wird
Wenn Sie in Ihren Java-Modulen bestimmte Ressourcenordner haben,
Ressourcen werden beim Ausführen von Tests in der IDE nicht gefunden. Tests ausführen
mit Gradle über
die Befehlszeile funktioniert. Gradle-check
ausführen
aus der IDE funktioniert. Siehe Problem
64887 für weitere Informationen
Details.
Dieses Problem tritt auf, weil ab IntelliJ 13 Sie nur noch einen einzelnen Ordner als Klassenpfad. Der Builder von IntelliJ kopiert alle Ressourcen in diesen Build-Ordner einfügen, aber Gradle kopiert die Ressourcen nicht.
- Problemumgehung 1: Führen Sie die Gradle-Task
check
nicht über die IDE aus, sondern einen Unittest durchführen. - Problemumgehung 2: Build-Skript aktualisieren, um Ressourcen manuell in im Build-Ordner. Weitere Informationen finden Sie unter Kommentar 13 .
Bei der Ausführung von JUnit-Tests kann der Code zweimal kompiliert werden.
Beim Erstellen eines neuen Projekts wird möglicherweise die Vorlage für die JUnit-Konfiguration erstellt mit zwei „Vor der Markteinführung“ Schritte: Make and Gradle-aware Make. Diese Konfiguration wird dann an alle erstellten JUnit-Ausführungskonfigurationen weitergegeben.
- Um das Problem für das aktuelle Projekt zu beheben, klicken Sie auf Ausführen > Bearbeiten Konfigurationen und ändern Sie die JUnit-Standardkonfiguration auf fügen Sie den Schritt "Gradle-aware" hinzu.
- Um das Problem für alle zukünftigen Projekte zu beheben, klicken Sie auf Datei > Schließen Projekt. Nun sollte der Begrüßungsbildschirm angezeigt werden. Klicken Sie dann auf Konfigurieren > Projektstandards > Run Configurations (Konfigurationen ausführen) und JUnit ändern nur den Schritt „Make“ (Gradle-sensitiver machen) enthalten.
Einige Testlaufkonfigurationen funktionieren nicht
Nicht alle Ausführungskonfigurationen, sind verfügbar, wenn mit der rechten Maustaste auf eine Testmethode geklickt wird. Konkret bedeutet das folgende Konfigurationen sind ungültig:
- Gradle-Ausführungskonfigurationen (mit einem Gradle-Logo als Symbol) werden nicht arbeiten.
- JUnit-Ausführungskonfigurationen (mit einem Symbol ohne grünes Android) gelten nicht für Instrumentierungstests, die nicht auf der lokalen JVM ausgeführt werden können.
Java-Haltepunkte beim Debuggen von nativem Code hinzufügen
Während Ihre App an einem Haltepunkt in Ihrer nativen Anwendung pausiert ist Auto- und Dual-Debugger möglicherweise nicht sofort erkennen, neuen Java-Haltepunkten, die Sie festgelegt haben. Fügen Sie Java-Haltepunkte hinzu, um dieses Problem zu vermeiden entweder vor dem Start einer Debug-Sitzung oder während die Anwendung auf einem Java-Client pausiert wird. Haltepunkt an. Weitere Informationen findest du unter Problem 229949.
Nativen Debugger verlassen
Wenn Sie den Auto- oder Dual-Debugger verwenden,
Debuggen von Java und nativem Code, wenn Sie eine native Funktion von
Ihren Java-Code (z. B. pausiert der Debugger die Ausführung an einer Zeile in der
Java-Code, der eine native Funktion aufruft und auf Step Into klickt.
) und zu Ihrem Java-Code zurückkehren möchten, klicken Sie auf
Programm fortsetzen
(anstelle von Step Out
oder Step Over
). Ihr Anwendungsprozess bleibt pausiert. Klicken Sie daher auf Fortsetzen
Programm
in your-module-java
, um ihn fortzusetzen. Weitere Informationen findest du unter Problem
224385.
Der native Debugger hängt beim Laden von Bibliotheken auf
Bei der ersten Verwendung des nativen Debugger nach dem Upgrade auf Android
ab Studio 4.2 reagiert der native Debugger möglicherweise nicht mehr
auf dem Android-Gerät. Dieses Problem tritt weiterhin auf.
selbst wenn Sie den Debugger beenden und neu starten. So beheben Sie das Problem:
Lösche den LLDB-Cache unter $USER/.lldb/module-cache/
.
Der native Debugger stürzt mit „Debugger-Prozess mit Exit-Code 127 beendet“ ab
Dieser Fehler tritt auf Linux-basierten Plattformen auf, wenn die
den nativen Debugger. Es gibt an, dass eine der Bibliotheken, die für die native
Debugger ist nicht auf dem lokalen System installiert. Der Name des fehlenden Elements
Bibliothek möglicherweise bereits in der Datei idea.log
gedruckt. Falls nicht, können Sie
um zum Installationsverzeichnis von Android Studio zu wechseln und
bin/lldb/bin/LLDBFrontend --version
, um zu erfahren, welche Bibliotheken
fehlen. In der Regel ist ncurses5
die fehlende Bibliothek,
Die Verteilungen wurden bereits auf ncurses6
aktualisiert.
Profiler
In diesem Abschnitt werden bekannte Probleme mit Profilern beschrieben.
Nativer Arbeitsspeicher-Profiler: Profilerstellung ist beim Start der Anwendung nicht verfügbar
Der Native Memory Profiler ist derzeit beim Start der Anwendung nicht verfügbar. Dieses wird in einer künftigen Version verfügbar sein.
Als Behelfslösung können Sie den eigenständigen Perfetto-Befehlszeilen-Profiler verwenden. um Startprofile zu erfassen.
Zeitüberschreitungsfehler im CPU-Profiler
Möglicherweise wird die Meldung „Aufzeichnung konnte nicht beendet werden“ angezeigt. Fehler in der Android Studio-CPU
Profiler, wenn Sie Java-Beispielmethoden oder Java-Trace-Methoden auswählen
Konfigurationen. Dies sind häufig Zeitüberschreitungsfehler, insbesondere wenn
folgende Fehlermeldung in der Datei idea.log
:
Wait for ART trace file timed out
Die Zeitüberschreitungsfehler wirken sich tendenziell stärker auf verfolgte Methoden aus als auf Stichproben der Methoden. länger sind als kürzere. Um das Problem zu umgehen, Versuchen Sie es mit kürzeren Aufnahmen, um zu sehen, ob der Fehler nicht mehr auftritt.
Falls in Profiler Probleme mit der Zeitüberschreitung auftreten, melden Sie den Fehler.
die die Marke und das Modell Ihrer Geräte sowie alle relevanten Einträge aus
idea.log
und logcat.
ADB-Ausnahme bei der Fehlerbehebung oder Profilerstellung
Bei Verwendung der Plattformtools 29.0.3 ist das native Debugging und die
Profiler funktionieren möglicherweise nicht richtig. Außerdem sehen Sie möglicherweise entweder
„AdbCommandAbgelehntException“ oder „Port konnte nicht verbunden werden“ im idea.log
wenn Sie Hilfe > Protokoll anzeigen. Upgrade der Plattformtools auf
Ab 29.0.4 werden beide Probleme behoben.
So führen Sie ein Upgrade der Plattformtools aus:
- Öffnen Sie den SDK Manager in Android Studio, indem Sie auf Tools >
SDK-Manager oder klicken Sie auf SDK-Manager.
in der Symbolleiste.
- Klicke auf das Kästchen neben Android SDK
Plattform-Tools, sodass ein Häkchen angezeigt wird. Ein Downloadsymbol
sollte in der linken Spalte angezeigt werden.
- Klicken Sie auf Übernehmen oder OK.
Plug-in verhindert, dass das Build-Ausgabefenster funktioniert
Mit dem Plug-in CMake simple highlighter wird verhindert, dass Inhalte in der Build-Ausgabefenster. Der Build wird ausgeführt und der Tab "Build-Ausgabe" wird angezeigt, aber Es wird keine Ausgabe ausgegeben (Problem Nr. 204791544).
Installationsreihenfolge verhindert Start
Wenn du eine neuere Version von Android Studio vor einer älteren Version installierst
verhindern, dass die ältere Version gestartet wird. Wenn Sie zum Beispiel das Tag
Canary-Version von Android Studio. Versuchen Sie dann, die stabile Version
wird die stabile Version möglicherweise nicht gestartet. In solchen Fällen müssen Sie
Leeren Sie den Cache, damit die stabile (ältere) Version gestartet werden kann. Unter macOS: Löschen
Lösche den Cache
Library/ApplicationSupport/Google/AndroidStudioversion_number
-Verzeichnis. Verwenden Sie zum Leeren des Cache unter Windows
Datenträgerbereinigung
Der Espresso Test Recorder funktioniert nicht mit der Funktion „Compose“
Die Espresso-Testrekorder funktioniert nicht mit Projekten, in denen die Funktion "Schreiben" enthalten ist. Um UI-Tests für Projekte zu erstellen Weitere Informationen
Logcat-Tastenkombinationen stehen mit nicht englischen Tastaturlayouts in Konflikt
Wenn Sie ein nicht englisches Tastaturlayout verwenden, eine Standard-Logcat-Tastatur
kann dies mit dem Layout in Konflikt stehen und verhindern, dass Sie bestimmte
wenn Sie Text in Android Studio bearbeiten. Um dieses Problem zu umgehen,
die in Konflikt stehende Logcat-Tastaturbelegung löschen oder neu zuordnen. So bearbeiten Sie die Logcat-Tastaturbelegungen in
Rufen Sie in Android Studio Android Studio > Einstellungen > Tastaturbelegung und suchen Sie nach
Logcat
in der Liste der Tastaturbelegungen. Weitere Informationen finden Sie unter
issue #263475910.
Dieses Problem wird durch Entfernen der Logcat-Verknüpfung in Android behoben. Studio Electric Eel Patch 1.
Bekannte Probleme mit dem Android-Gradle-Plug-in
In diesem Abschnitt werden bekannte Probleme beschrieben, die in der neuesten stabilen Version von das Android-Gradle-Plug-in.
Nicht alle Abhängigkeiten der Bibliothek mit dynamischen Funktionen werden mit Lint geprüft
Wenn Sie Lint mit checkDependencies = true
aus einem App-Modul ausführen,
Abhängigkeiten der Bibliothek mit dynamischen Funktionen werden nur geprüft, wenn sie auch
Abhängigkeiten (Problem Nr. 191977888)
Als Behelfslösung kann die Lint-Aufgabe auf diesen Bibliotheken ausgeführt werden.
Signieren der Datei mit dem Namen mit Zeilenumbruchzeichen
Die JAR-Signatur (v1-Schema) unterstützt keine Dateinamen, die Wagenzeichen enthalten. Return-Zeichen (Problem-Nr. 63885809)
Das Ändern der Variantenausgaben während der Build-Erstellung funktioniert möglicherweise nicht
Die Bearbeitung von Variantenausgaben über die Variant API funktioniert mit der neuen . Es funktioniert auch für einfache Aufgaben wie das Ändern des APK-Namens während wie unten dargestellt:
// If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> variant.outputs.all { outputFileName = "${variant.name}-${variant.versionName}.apk" } }
Kompliziertere Aufgaben, bei denen auf outputFile
-Objekte zugegriffen wird
funktionieren nicht mehr. Das liegt daran, dass variantenspezifische Aufgaben nicht mehr erstellt werden.
während der Konfigurationsphase. Das führt dazu, dass das Plug-in
alle Ausgaben im Voraus zu erhalten, aber auch schnellere Konfigurationszeiten.
„manifestOutputFile“ ist nicht mehr verfügbar
Die Methode processManifest.manifestOutputFile()
ist nicht mehr verfügbar
verfügbar und Sie erhalten beim Aufruf die folgende Fehlermeldung:
A problem occurred configuring project ':myapp'. Could not get unknown property 'manifestOutputFile' for task ':myapp:processDebugManifest' of type com.android.build.gradle.tasks.ProcessManifest.
Anstatt manifestOutputFile()
aufzurufen, um die Manifestdatei für jedes Element abzurufen
können Sie processManifest.manifestOutputDirectory()
aufrufen,
Pfad des Verzeichnisses, das alle generierten Manifeste enthält. Sie können dann
und deine Logik darauf anwenden. Im folgenden Beispiel wurde dynamisch
den Versionscode im Manifest ändert:
android.applicationVariants.all { variant -> variant.outputs.all { output -> output.processManifest.doLast { // Stores the path to the maifest. String manifestPath = "$manifestOutputDirectory/AndroidManifest.xml" // Stores the contents of the manifest. def manifestContent = file(manifestPath).getText() // Changes the version code in the stored text. manifestContent = manifestContent.replace('android:versionCode="1"', String.format('android:versionCode="%s"', generatedCode)) // Overwrites the manifest with the new text. file(manifestPath).write(manifestContent) } } }
Probleme mit der AIDL-Unterstützung für AGP 7.3.0 und Kotlin 1.7.x
Die Verwendung von AGP 7.3.0 mit KAPT in Kotlin 1.7.x führt dazu, dass die AIDL-Quellsätze für
bestimmte Build-Varianten zu entfernen. Sie können weiterhin die andere AIDL-Quelle verwenden
Gruppen, einschließlich main/
, Build-Typen, Produkt-Geschmacksrichtungen und Kombinationen
Produktgeschmack. Wenn Sie die variantenspezifischen AIDL-Quellsätze verwenden müssen,
verwenden Sie weiterhin Kotlin 1.6.21.
Bekannte Probleme behoben
In diesem Abschnitt werden bekannte Probleme beschrieben, die in einer neuen Version behoben wurden. Wenn Wenn eines dieser Probleme auftritt, sollten Sie Android Studio auf die neueste stabile Version oder Vorabversion.
Behoben in Android Studio 2021.1.1
- Fehlende Lint-Ausgabe: Es wird kein Lint-Text an
stdout
ausgegeben, wenn Die Lint-Aufgabe istUP-TO-DATE
(Ausgabe 191897708). Festgelegt in AGP 7.1.0-alpha05. - Probleme beim Unittest eines App-Projekts, das das Hilt-Plug-in verwendet: Der Einheitentest-Klassenpfad enthält die nicht instrumentierten App-Klassen. Das bedeutet, Hilt instrumentiert die App-Klassen nicht, um die Abhängigkeitsinjektion zu handhaben, wenn Einheitentests ausführen (Problem-Nr. 213534628) Behoben in AGP 7.1.1.
Behoben in Android Studio 2020.3.1
- Lint-Ausnahmen in Kotlin-Projekten: Kotlin-Projekte, die Folgendes festlegen:
Bei
checkDependencies = true
können Ausnahmen oder Fehler mit Null-Cursorn auftreten (Problem-Nr. 158777858)
Behoben in Android Studio 4.2
- IDE friert unter macOS Big Sur ein:Android Studio 4.1 friert möglicherweise ein, wenn Sie ein Dialogfeld zu öffnen.
Behoben in Android Studio 4.1
- Neu starten, um Arbeitsspeichereinstellungen aus vorheriger IDE-Version anzuwenden: Nach Wenn Sie Android Studio aktualisieren, müssen Sie Android Studio neu starten, um Arbeitsspeichereinstellungen, die von einer früheren Version der IDE migriert wurden.
- Manifestklasse mit benutzerdefinierten Berechtigungsstrings wird nicht mehr generiert von
default (Standardeinstellung): Wenn Sie den Kurs erstellen möchten, legen Sie Folgendes fest:
android.generateManifestClass = true
Behoben in Android Studio 3.6
APK-Installationsfehler unter LineageOS: App wird auf Geräten bereitgestellt Versionen von LineageOS oder CyanogenMod ausführen, schlägt möglicherweise fehl und Ausnahme vom Typ
INSTALL_PARSE_FAILED_NOT_APK
.Unter Android Studio 3.6 Beta 1 und höher verarbeitet die IDE diese Ausnahme durch Eine vollständige App-Installation beim Bereitstellen der App ausführen auf LineageOS- oder CyanogenMod-Geräte, was eine längere Bereitstellung Mal.
Behoben in Android Studio 3.5.2
- Fehlerhafter XML-Code-Stil: Beim Bearbeiten von XML-Code hat die IDE ein falscher Codestil bei Auswahl von Code > Umformatierung von Code aus der in der Menüleiste.
Behoben in Android Studio 3.3.1
Fehler aufgrund fehlenden Arbeitsspeichers beim Scannen von C++-basierten Projekten: Wenn Gradle scannt ein Projekt mit C++ Code an mehr als einem Speicherort auf demselben Laufwerk erstellt, Scan enthält alle Verzeichnisse unterhalb des ersten gemeinsamen Verzeichnisses. Suche läuft kann es zu Fehlern mit unzureichendem Arbeitsspeicher kommen.
Weitere Informationen zu diesem Thema finden Sie unter den bug, der mit dem Problem.