Android Studio ve Android Gradle Eklentisi ile ilgili bilinen sorunlar

Bu sayfa, şununla ilgili bilinen sorunları izler: Android Studio Koala ve Android Gradle eklentisi 8.5.0. Dahil edilmemiş bir sorunla karşılaşırsanız Lütfen buradan hata bildiriminde bulunun.

Önizlemek için yeni sürüme geçin: Android Studio ve Android'in her sürümü Gradle eklentisi, kararlılığı ve performansı iyileştirip yeni özellikler eklemeyi amaçlar. Gelecek sürümlerin avantajlarından hemen yararlanmak için indirip yükleyin. Android Studio Önizlemesi.

Android Studio ile İlgili Bilinen Sorunlar

Bu bölümde, Android uygulamasının en son kararlı sürümündeki bilinen sorunlar açıklanmaktadır Android Studio'ya gidin.

Firebase asistan penceresinde hata mesajı gösteriliyor

Firebase Assistant Window'da (ana menüden Araçlar > Firebase) hata mesajı gösterilirse önbellekleri geçersiz kılın ve hatayı düzeltmek için Android Studio'yu yeniden başlatın.

Düzen Denetleyicisi kullanılarak bir görünüm izole edilemez

Yerleşik verileri kullanarak bir görünümü ayırma olanağı Düzen Denetleyicisi geçici olarak kullanılamıyor. Bu sorunu gelecekteki bir sürümde düzeltmek için çalışıyoruz.

Oluşturma düğümlerinin tümü Düzen Denetleyicisi kullanılarak incelenemez

Düzen Denetleyicisi, bunun nedeni bir hata olabilir . Yaşadığınız sorun Bu sorunla karşılaşmamak için Compose 1.5.0-alpha04 veya daha yüksek.

Oluşturma Önizlemesi oluşturulurken hata oluştu

Android Studio Chipmunk'tan başlayarak java.lang.NoSuchFieldError: view_tree_saved_state_registry_owner veya Sorunlar panelinde java.lang.ClassNotFoundException: androidx.savedstate.R$id her bir komut dosyasına bir debugImplementation bağımlılığı eklediğinizden emin olun Modülünüzde androidx.lifecycle:lifecycle-viewmodel-savedstate.

İçinde java.lang.NoSuchFieldError: view_tree_lifecycle_owner görüyorsanız bir debugImplementation bağımlılığı eklediğinizden emin olun. androidx.lifecycle:lifecycle-runtime ile yapmanız gerekir.

java.lang.NoClassDefFoundError: Could not initialize class androidx.customview.poolingcontainer.PoolingContainer veya java.lang.NoClassDefFoundError: androidx/customview/poolingcontainer/PoolingContainerListener sorunları kontrol panelinde, sorunları bildiren bir debugImplementation bağımlılığı eklediğinizden emin olun Modülünüzde androidx.customview:customview-poolingcontainer.

Anahtar ve anahtar deposu için farklı şifreler kullanılırken hata oluştu

Android Studio 4.2 sürümünden itibaren artık JDK 11 ile çalışmaktadır. Bu güncelleme anahtarlarla ilgili temel bir davranış değişikliğine neden olur.

Derleme > Oluştur'a gittiğinizde İmzalanmış Paket / APK ve bir uygulama paketi veya anahtar ve anahtar deposu için farklı şifreler girmek, APK'ya şu hata oluştu:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

Bu sorunu çözmek üzere hem anahtar hem de anahtar deposuna gidin.

Android Studio, 4.2 sürümü yüklendikten sonra başlamıyor

Studio, önceki deneyimden .vmoptions ve bunları, JDK 11. Bu işlem başarısız olursa IDE, başka bir cihazda çalışan belirli kullanıcılar için .vmoptions dosyasında özel sanal makine seçeneklerini ayarlayın.

Bu sorunu çözmek için özel seçenekleri belirtmenizi öneririz .vmoptions ("#" karakterini kullanarak). .vmoptions dosyası şu konumlarda bulundu:

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

Bu çözümü denedikten sonra Studio yine de başlamıyorsa yeni sürüme geçtikten sonra Studio başlamıyor konusuna bakın bölümüne göz atın.

Android 11 emülatöründe Veritabanı İnceleyici kilitlenmesi kullanan uygulamalar

Veritabanı Denetleyicisi kullanan uygulamalar Android 11'de çalışırken kilitlenebilir emülatöründe aşağıdakine benzer bir hatayla karşılaşıldı:

 Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)

Bu sorunu düzeltmek için Android 11 emülatörünüzü Araçlar > SDK Yöneticisi'ne gidin. SDK Platformları sekmesinde şu ayarları kontrol edin: Paket Ayrıntılarını Göster etiketli kutu ve .

Yeni sürüme geçişten sonra Studio açılmıyor

Yeni sürüme geçirme işleminden sonra Studio çalışmıyorsa sorun geçersiz bir Android Studio'nun önceki bir sürümünden içe aktarılan Android Studio yapılandırması veya uyumsuz bir eklenti yükleyin. Geçici bir çözüm olarak, yedekleme amacıyla) aşağıdaki dizine (Android Studio sürümüne bağlı olarak) işletim sistemini ve Android Studio'yu tekrar başlatmayı deneyebilirsiniz. Bu işlem Android'i sıfırlar Studio, tüm üçüncü taraf eklentileri kaldırılmış şekilde varsayılan durumuna getirir.

Android Studio 4.1 ve sonraki sürümler için:

  • Windows: %APPDATA%\Google\AndroidStudio<version>
    Örnek: C:\Users\your_user_name\AppData\Roaming\Google\AndroidStudio4.1

  • macOS:~/Library/Application Support/Google/AndroidStudio<version>
    Örnek: ~/Library/Application Support/Google/AndroidStudio4.1

  • Linux: ~/.config/Google/AndroidStudio<version> ve ~/.local/share/Google/AndroidStudio<version>
    Örnek: ~/.config/Google/AndroidStudio4.1 ve ~/.local/share/Google/AndroidStudio4.1

Android Studio 4.0 ve önceki sürümler için:

  • Windows: %HOMEPATH%\.AndroidStudio<version>\config
    Örnek: C:\Users\your_user_name\.AndroidStudio3.6\config

  • macOS:~/Library/Preferences/AndroidStudio<version>
    Örnek: ~/Library/Preferences/AndroidStudio3.6

  • Linux: ~/.AndroidStudio<version>/config
    Örnek: ~/.AndroidStudio3.6/config

Android'in Canary ve Beta sürümleri için yapılandırma dizininin Studio, şu öğe için X.Y yerine PreviewX.Y <version>. Örneğin, Android Studio 4.1 Canary derlemeleriAndroidStudioPreview4.1 Sürüm Adayları ve Mevcut Ürün için kullanılan AndroidStudio4.1 dizini yayınlar.

Kotlin çok platformlu projelerinde derleme sorunu

Kotlin MPP kodunda eksik simgeler nedeniyle derleme hataları ortaya çıkabilir. Kotlin eklentinizi 1.4 sürümüne yükseltmek bu sorunu çözecektir.

Linux'ta tuş eşleme çakışmaları

Linux'ta, belirli klavye kısayolları varsayılan Linux klavyesiyle çakışıyor ve KDE ve GNOME gibi popüler pencere yöneticilerinin kısayolları ile birlikte kullanılır. Bu çakışan klavye kısayolları Android Studio'da beklendiği gibi çalışmayabilir.

Olası geçici çözümler dahil olmak üzere bu sorunla ilgili daha fazla bilgiyi şurada bulabilirsiniz: (IntelliJ'in hata izleyicisi) oluşturun.

ChromeOS'te küçük kullanıcı arayüzü metni

ChromeOS'te metin, önceki sürümlerden çok daha küçük görünebilir. İş yerine Bu sorunla ilgili olarak şunları yapın:

  1. Dosya > seçeneğini tıklayarak Ayarlar penceresini açın. Ayarlar
  2. Görünüm ve Davranış > Görünüm.
  3. Özel yazı tipi kullan'ı seçin.
  4. Yazı tipi boyutunu artırın.
  5. Ayarlar penceresinde Düzenleyici > Yazı Tipi.
  6. Yazı tipi boyutunu artırın.
  7. Tamam'ı tıklayın.

Kod düzenleme

Bu bölümde, kod düzenleyiciyle ilgili bilinen sorunlar açıklanmaktadır.

Klavye girişi dondu - "iBus" Linux'ta sorunlar

Ekipmanların yaygın olarak etkileşimlerine değer verdi. Bazılarında durumlarda, IDE klavye girişine yanıt vermeyi bırakır veya rastgele karakterler var. Bu hata, eksik senkronizasyon nedeniyle tetikleniyor iBus ile XLib + AWT arasında tanımlanmıştır ve yukarı akış JetBrains ve iBus. Her biri 100'den az gösterim alan şu üç geçici çözüm vardır:

  • Geçici Çözüm 1: iBus'u eşzamanlı modda kullanmaya zorlayın. Android'i başlatmadan önce Studio'da, komut satırında aşağıdaki komutu çalıştırın:
    $ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd
    .
  • Geçici Çözüm 2: Android Studio'da iBus girişini devre dışı bırakın. iBus girişini devre dışı bırakmak için kullanıyorsanız komut satırında aşağıdaki komutu çalıştırın:
    $ XMODIFIERS= ./bin/studio.sh
    . Bu geçici çözüm yalnızca Android Studio için giriş yöntemlerini devre dışı bırakır, ve çalıştırıyor olabileceğiniz diğer tüm uygulamalar. Yeniden başlattığınızda Android Studio çalışırken arka plan programı (örneğin, ibus-daemon -rd) tüm cihazlar için giriş yöntemlerini olabilir ve ayrıca Android Studio'nun JVM'sine bir segmentasyon hatası.
  • Geçici Çözüm 3: Kısayol bağlamalarını tekrar kontrol ederek Sonraki giriş kısayolu aynı zamanda Control+Boşluk tuşu olarak ayarlanmadı kod tamamlama kısayolu ile oluşturabilirsiniz. Ubuntu 14.04 (Trusty) Süper+Boşluk tuşu varsayılan kısayol yapar, ancak öncekinden ayarlar yeni versiyonları mevcut olabilir. Kısayol bağlamalarınızı kontrol etmek için ibus-setup tuşlarına basarak IBus Preferences (IBus Tercihleri) penceresini açın. Klavye Kısayolları bölümünde Sonraki giriş yöntemi'ni işaretleyin. Eğer Ctrl+Boşluk tuşu olarak ayarlandığında ise Süper+Boşluk tuşu veya tercih edebilirsiniz.

Proje yapılandırması

Bu bölümde proje yapılandırması ve Gradle ile ilgili bilinen sorunlar açıklanmaktadır senkronize edin.

Gradle Senkronizasyonu Başarısız: Bozuk Boru

Sorun, Gradle arka plan programının IPv6 yerine IPv4 kullanmaya çalışmasıdır.

  • Geçici Çözüm 1: Linux'ta, ~/.profile veya ~/.bash_profile:
    export _JAVA_OPTIONS="-Djava.net.preferIPv6Addresses=true"
  • Geçici Çözüm 2: Android Studio'nun vmoptions dosya -Djava.net.preferIPv4Addresses=true satırını şu şekilde değiştir: -Djava.net.preferIPv6Addresses=true Daha fazla bilgi için Ağ İletişimi IPv6 Kullanıcısı Rehber.

"emsalin kimliği doğrulanmadı" Gradle senkronizasyonu veya SDK Yöneticisi'nden kaynaklanan hatalar

Bu hataların temel nedeni, $JAVA_HOME/jre/lib/certificates/cacerts Bu hataları gidermek için devam edin şu şekilde:

  • Bir proxy kullanıyorsanız doğrudan bağlanmayı deneyin. Doğrudan bağlantı çalışıyorsa proxy üzerinden bağlanmak için keytool kullanarak proxy sunucunun sertifikasını cacerts dosyasına ekleyin.
  • Desteklenen, değiştirilmemiş bir JDK'yı yeniden yükleyin. Bir bilinen sorun Ubuntu kullanıcılarını etkiliyor, bu da /etc/ssl/certs/java/cacerts. Bu sorunu çözmek için komut satırında şu şekilde görünür:
    sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure
    .

Dağıtılıyor

Bu bölümde, uygulamanızı bağlı bir olanak tanır.

[Yalnızca Mac OS] /System/Volumes/Data altına kaydedilen projelerde Gradle dosyası izlemeyle ilgili bir sorun nedeniyle artımlı güncellemeler uygulanmaz

Gradle sorunu 18149 şunları etkiler Gradle 7.0 ve üzeri sürümleri gerektirdiği için Android Gradle Plugin'in 7.0 ve sonraki sürümleri. Gradle 7.0'dan itibaren dosya izleme varsayılan olarak etkindir. Mac OS üzerinde çalışıyorsanız ve projeniz /System/Volumes/Data, Gradle dosyası izleme dosya değişikliklerini düzgün şekilde izlemez. Bu işlem, Derleme Sistemi'nin herhangi bir dosya değişikliği görmemesine neden olur ve bu nedenle APK'ları güncellemez. Artımlı dağıtım kodu yerel APK durumu cihazındakiyle aynı olduğundan hiçbir şey yok.

Bu sorunu çözmek için projenizin dizinini kullanıcınıza taşımalısınız (/Users/username altında). Build System (Derleme Sistemi) bu şekilde dosya değişiklikleri hakkında Gradle dosya izleme ve artımlılığı ile değişiklikleri başarıyla uygulanacak.

macOS High Sierra'da Android Emülatör HAXM

Android Emülatör açık macOS High Sierra (10.13) için en iyi uygulama için HAXM 6.2.1+ gerekir macOS ile uyumluluk ve kararlılık. Ancak macOS 10.13'te daha fazla HAXM gibi çekirdek uzantılarını yüklemek için bir dizi işlem gerektirir. İhtiyacınız olanlar aşağıdaki adımları uygulayarak çekirdek uzantısının yüklenmesine manuel olarak izin verin:

  1. Öncelikle, SDK Yöneticisi
  2. MacOS'te Sistem Tercihleri > Güvenlik ve Gizlilik.
  3. "Intel Corporation geliştiricisine ait sistem yazılımı" şeklinde bir uyarı görürseniz Uygulamalar" olması engellendiyse İzin ver'i tıklayın:

Daha fazla bilgi ve geçici çözümler için bkz. bu Apple web sayfasını ve sorun 62395878.

Değişiklikleri Uygulama

Bu bölümde, Uygulama süreciyle ilgili bilinen sorunlar Değişiklikler.

Yeni uygulama adı uygulanmadı

Uygulamanızı yeniden adlandırdıktan sonra bu değişikliği uygulamaya çalışırsanız güncellenen ad yansıtılmaz. Bu sorunu çözmek için Çalıştır'ı tıklayın. Çalıştır simgesi seçeneğini tıklayın.

Android Çalışma Zamanı'ndaki sorun hata veriyor

Android 8.0 veya 8.1 yüklü bir cihaz kullanıyorsanız "VERIFICATION_ERROR" belirli değişiklik türlerini uygulamaya çalışırken (özellikle Kotlin kullanıyorsanız). Bu mesaj, Android 9.0 ve sonraki sürümlerde sabitlenen Android Çalışma Zamanı. Sorun Uygulama değişikliklerinin başarısız olmasına neden oluyorsa, ÇalıştırÇalıştır simgesi uygulamanızı tekrar kontrol edin. Ancak, Android 9.0 veya sonraki bir sürüme yükseltin.

Hata ayıklama ve test etme

Bu bölümde hata ayıklama ve uygulamanızı test etmeyle ilgili bilinen sorunlar açıklanmaktadır.

JUnit, Android Studio'dan çalıştırıldığında sınıf yolunda eksik kaynakları test eder

Java modüllerinizde belirli kaynak klasörleriniz varsa, bu klasörler de IDE'den test çalıştırırken kaynaklar bulunamaz. Testler yapılıyor komut satırından Gradle kullanmanız işe yarar. Gradle check yürütülüyor IDE'deki (Entegre Geliştirme Ortamı) görevi de çalışır. Sorunu göster Daha fazla bilgi için 64887 bolca fırsat sunuyor.

Bu sorun, IntelliJ 13 sürümünden itibaren ortaya çıkmaktadır. tek bir klasörü sınıf yolu olarak ayarlayın. IntelliJ oluşturucusu tüm kaynakları kopyalar içine koymaz. Ancak Gradle, kaynakları kopyalamaz.

  • 1. Geçici Çözüm: Gradle check görevini şu komut yerine IDE'den çalıştırın: bir birim testi yapabilirsiniz.
  • Geçici Çözüm 2: Kaynakları derleme klasöründe bulabilirsiniz. Görüntüleyin 13. yorum konulu videomuzu izleyin.

JUnit testlerini çalıştırmak, kodu iki kez derleyebilir

Yeni proje oluşturulurken JUnit yapılandırması oluşturulabilir. iki "Lansmandan önce" adımlar: Bu yapılandırma sonra oluşturulan tüm JUnit çalıştırma yapılandırmalarına yayılır.

  • Mevcut projeyle ilgili sorunu gidermek için Çalıştır > Düzenle Configurations'ı (Yapılandırmalar) tıklayın ve varsayılan JUnit yapılandırmasını yalnızca Gradle Uyumlu Yapma adımını da içerir.
  • Gelecekteki tüm projeler için sorunu düzeltmek üzere Dosya > Kapat Proje. Karşılama ekranını göreceksiniz. Ardından Yapılandır > Proje Varsayılanları > Run Configurations (Yapılandırmaları Çalıştır) ve JUnit'i değiştirin yalnızca Gradle'a Duyarlı Yapma adımını içerecek şekilde yapılandırmalısınız.

Bazı test çalıştırma yapılandırmaları çalışmıyor

Tüm yapılandırmalar geçerli bir test yöntemi sağ tıklandığında kullanılabilir. Daha ayrıntılı belirtmek gerekirse, şu yapılandırmalar geçerli değildir:

  • Gradle çalıştırma yapılandırmaları (simge olarak Gradle logosu olan) iş yeri.
  • JUnit çalıştırma yapılandırmaları (yeşil Android simgesi olmadan) yerel JVM üzerinde çalıştırılamayan araç testlerine uygulanmaz.
ziyaret edin. Android Studio, belirli bir bağlam (örneğin, belirli bir sınıfı veya yöntemi sağ tıklayarak) ileride farklı bir yapılandırmada çalıştırmayı teklif eder. Bunu düzeltmek için Çalıştır > Yapılandırmaları düzenleyin ve yanlış oluşturulan yapılandırma öğelerini kaldırın yapılandırmanın üç yolu vardır.

Yerel kodda hata ayıklarken Java ayrılma noktaları ekleme

Uygulamanız yerel dosyanızdaki bir kesme noktasında duraklatılmışken Otomatik ve Çift hata ayıklayıcıları, kodu algılamadan oluşturduğunuz yeni Java ayrılma noktalarının sayısı. Bu sorunu önlemek için Java ayrılma noktaları ekleyin hata ayıklama oturumu başlatmadan önce veya uygulama Java'da duraklatılmışken devam eder. Daha fazla bilgi için sorunu inceleyin. 229949.

Yerel hata ayıklayıcıdan çıkma

Otomatik veya Çift hata ayıklayıcısını Şuradan yerel işleve geçerseniz Java ve yerel kodda hata ayıklayın: (örneğin, hata ayıklayıcı web sayfanızdaki bir satırda yürütmeyi duraklatır) Yerel bir işlev çağıran ve Adım Adım'ı tıkladığınız Java kodu ) ve Java kodunuza dönmek istiyorsanız Programı Devam Ettirin (Adımdan Çık veya Adım Aş yerine). Uygulama işleminiz hâlâ duraklatılmış halde olacak. Bu nedenle Devam Ettir'i tıklayın. your-module-java sekmesini tıklayın. Daha fazla bilgi için sorunu inceleyin. 224385.)

Kitaplıklar yüklenirken yerel hata ayıklayıcı kilitleniyor

Android'e geçtikten sonra yerel hata ayıklayıcıyı ilk kez kullanırken Studio 4.2 ve sonraki sürümler, yerel hata ayıklayıcı yükleme sırasında yanıt vermeyi durdurabilir kitaplıklarını da içerir. Bu sorun devam eden sabit bir problemdir hata ayıklayıcıyı durdurup yeniden başlatsanız bile gerçekleşmeyeceğini belirtir. Bu sorunu çözmek için $USER/.lldb/module-cache/ konumundaki LLDB önbelleğini silin.

"Hata ayıklayıcı işlemi, çıkış kodu 127 ile tamamlandı" mesajıyla yerel hata ayıklayıcı kilitleniyor.

Bu hata, Linux tabanlı platformlarda yerel hata ayıklayıcı. Bu, yerel dilin gerekli kıldığı kitaplıklardan birinin hata ayıklayıcı, yerel sistemde yüklü değil. Kayıp kişinin adı kitaplığı zaten idea.log dosyasında yazdırılmış olabilir. Aksi takdirde, terminali aracılığıyla Android Studio yükleme dizinine gidip bin/lldb/bin/LLDBFrontend --version komut satırını kullanarak hangi kitaplıkların eksik. Genelde, yakın zamanda kullanılan bir Linux olduğu için eksik kitaplık ncurses5 şeklindedir dağıtımlar zaten ncurses6 sürümüne yükseltildi.

Profil düzenleyiciler

Bu bölümde, Profilers'la ilgili bilinen sorunlar açıklanmaktadır.

Yerel Bellek Profil Aracı: Uygulama başlatılırken profil oluşturma kullanılamaz

Yerel Bellek Profil Aracı şu anda uygulama başlatılırken kullanılamaz. Bu seçeneği gelecek bir sürümde kullanıma sunulacaktır.

Geçici bir çözüm olarak Perfetto bağımsız komut satırı profil aracını kullanabilirsiniz. yakalamanızı sağlar.

CPU Profiler'da zaman aşımı hataları

"Kayıt duramadı" hata mesajını görebilirsiniz Android Studio CPU'suyla ilgili hatalar Örnek Java Yöntemleri veya Java Yöntemlerini İzle'yi seçtiğinizde Profil aracı yapılandırmanın üç yolu vardır. Bunlar genellikle zaman aşımı hatalarıdır, özellikle de idea.log dosyasında şu hata mesajı gösteriliyor:

Wait for ART trace file timed out

Zaman aşımı hataları, izlenen yöntemleri örneklenen yöntemlere göre daha fazla etkiler. ve uzun kayıtlar, kısa kayıtlara göre fazladır. Geçici bir çözüm olarak, hatanın giderilip giderilmediğini görmek için daha kısa kayıtlar denemek yararlı olabilir.

Profiler'da zaman aşımı sorunları yaşıyorsanız lütfen hata bildiriminde bulunun ve cihazlarınızın marka/modelini ve belgedeki idea.log ve logcat.

Hata ayıklama veya profil oluşturma sırasında ADB istisnası

Platform Araçları 29.0.3 kullanılırken yerel hata ayıklama ve Android Studio Profil düzenleyiciler düzgün çalışmayabilir ve "AdbCommandFailedException" veya "Bağlantı noktası bağlanamadı" idea.log içinde Yardım > Günlüğü Göster'i tıklayın. Platform Araçlarını yeni sürüme geçirme 29.0.4 veya daha yeni sürümler her iki sorunu da düzeltir.

Platform Araçları'nı yükseltmek için aşağıdakileri yapın:

  1. Android Studio'da Araçlar > SDK Manager'ı seçin veya SDK Yöneticisi'ni tıklayın. tıklayın.
  2. Android SDK'sı seçeneğinin yanındaki onay kutusunu tıklayın. Platform Araçları'nı tıklayın. İndirme simgesi sol sütunda görünür.
  3. Uygula veya Tamam'ı tıklayın.

Eklenti, Derleme Çıkışı penceresinin çalışmasını engelliyor

CMake basit vurgulayıcı eklentisinin kullanılması, içeriğin Derleme Çıkışı penceresi. Derleme çalışır ve Build Çıktı sekmesi görünür ancak yazdırılmış çıkış yoksa (sorun numarası 204791544).

Yükleme siparişi başlatmayı engelliyor

Eski bir sürümden önce Android Studio'nun daha yeni bir sürümünü yüklemek eski sürümün başlatılmasını engelleyin. Örneğin, canary sürümünü kullanmak ve ardından kararlı sürümü yükleyip başlatmayı deneyin kararlı sürüm başlatılmayabilir. Bu gibi durumlarda Kararlı (eski) sürümün başlatılması için önbelleği temizleyin. macOS'te, temizlemek için önbellek, Library/ApplicationSupport/Google/AndroidStudioversion_number. dizin. Windows'da, önbellek kullanımını temizlemek için Disk Temizleme.

Espresso Test Kaydedici, Compose ile çalışmıyor

İlgili içeriği oluşturmak için kullanılan Espresso Test Kaydedici Compose içeren projelerle çalışmaz. Projeler için kullanıcı arayüzü testleri oluşturmak amacıyla Oluşturma düzeninizi test etme konusuna bakın.

Logcat kısayolu, İngilizce olmayan klavye düzenleriyle çakışıyor

İngilizce olmayan bir klavye düzeni kullanıyorsanız varsayılan Logcat klavyesi kısayol düzenle çakışabilir ve belirli bir metin karakterlere dayanıyor. Bu sorunu çözmek için çakışan Logcat tuş eşlemesini silin veya yeniden eşleyin. Logcat tuş eşlemelerini Android Studio'da Android Studio > Ayarlar > Tuş eşleme ve arama kutusu Logcat (Tuş eşleme listesinde). Daha fazla bilgi için bkz. sorun #263475910.

Bu sorun, Android'de Logcat kısayolunun kaldırılmasıyla çözülecektir. Stüdyo Elektrikli Yılan Balığı Yaması 1.

Android Gradle Eklentisi ile ilgili bilinen sorunlar

Bu bölümde, Android uygulamasının en son kararlı sürümündeki bilinen sorunlar açıklanmaktadır hoş geldiniz.

Dinamik özellik kitaplığı bağımlılıklarının hepsi için hata analizi yapılmamış

Bir uygulama modülünden checkDependencies = true ile lint çalıştırırken Dinamik özellik kitaplığı bağımlılıkları, aynı zamanda uygulama değilse kontrol edilmez bağımlılıklar (sorun numarası 191977888). Geçici bir çözüm olarak, lint görevi bu kitaplıklarda çalıştırılabilir.

Satır başı karakteri ile adlandırılmış imzalama dosyası

JAR imzası (v1 şeması), satır başı içeren dosya adlarını desteklemez karakterleri döndür (sorun numarası 63885809).

Derleme sırasında varyant çıkışlarını değiştirmek düzgün çalışmayabilir.

Varyant çıkışlarını değiştirmek için Variant API'nin kullanılması yeni eklentisidir. Bu özellik, sırasında APK'nın adını değiştirmek gibi basit görevlerde çalışmaya devam eder. aşağıda gösterildiği gibidir:

// 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"
    }
}
.

Bununla birlikte, outputFile nesneye erişimi içeren daha karmaşık görevler artık çalışmıyor. Bunun nedeni, artık varyanta özel görevlerin oluşturulmamasıdır. Bu adımları uygulamanız gerekir. Bu, eklentinin ön planda tutmanın yanı sıra yapılandırma sürelerinin daha kısa olması anlamına da gelir.

manifestÇıkışFile artık kullanılamıyor

processManifest.manifestOutputFile() yöntemi artık kullanılmıyor kullanılabilir ve çağırdığınızda şu hatayı alırsınız:

A problem occurred configuring project ':myapp'.
   Could not get unknown property 'manifestOutputFile' for task
   ':myapp:processDebugManifest' of type
   com.android.build.gradle.tasks.ProcessManifest.

Her dosya için manifest dosyasını almak üzere manifestOutputFile() yöntemini çağırmak yerine (processManifest.manifestOutputDirectory()) çağırarak dizin yolunu izleyin. Ardından bir manifesto bulun ve mantığınızı ona uygulayın. Aşağıdaki örnek dinamik olarak manifest dosyasındaki sürüm kodunu değiştirir:

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)
        }
    }
}

AGP 7.3.0 AIDL desteği ve Kotlin 1.7.x ile ilgili sorunlar

Kotlin 1.7.x sürümünde KAPT ile AGP 7.3.0'ın kullanılması, AIDL kaynağının kaldırılacak belirli derleme varyantları. Diğer AIDL kaynağını kullanmaya devam edebilirsiniz main/, derleme türleri, ürün aromaları ve kombinasyonlar dahil olmak üzere bir araya getirmektir. Varyanta özel AIDL kaynak gruplarını kullanmanız gerekiyorsa Kotlin 1.6.21'i kullanmaya devam edin.

Bilinen sorunlar giderildi

Bu bölümde, yakın zamanda yayınlanan bir sürümde düzeltilmiş olan bilinen sorunlar açıklanmaktadır. Eğer bunlardan herhangi birini yaşıyorsanız Android'i güncellemeniz gerekir. Studio'yu en son kararlı sürüme veya önizleme sürümüne yükleyin.

Android Studio 2021.1.1'de düzeltildi

  • Eksik lint çıkışı: Aşağıdaki durumlarda stdout hedefine yazdırılan lint metni çıkışı olmaz: lint görevi UP-TO-DATE (sorun numarası 191897708). Sabitlendiği yer: AGP 7.1.0-alpha05.
  • Hilt eklentisini kullanan bir uygulama projesini birim testiyle ilgili sorunlar: Birim testi sınıf yolu, araçsız uygulama sınıflarını içerir. Bu da Hilt, aşağıdaki durumlarda bağımlılık yerleştirmeyi işlemek için uygulama sınıflarını ayarlamaz: birim testleri çalıştırılıyor (sorun numarası 213534628). AGP 7.1.1'de düzeltildi.

Android Studio 2020.3.1'de düzeltildi

  • Kotlin projelerinde Lint istisnaları: checkDependencies = true, boş işaretçi istisnaları veya hatalarıyla karşılaşabilir (sorun numarası 158777858).

Android Studio 4.2'de düzeltildi

  • IDE, macOS Big Sur'da donuyor: Android Studio 4.1, aşağıdaki işlemleri yaptığınızda donabilir iletişim kutusu açın.

Android Studio 4.1'de düzeltildi

  • IDE'nin önceki sürümünden bellek ayarlarını uygulamak için yeniden başlatın: Android Studio güncellendiğinde, IDE'nin önceki bir sürümünden taşınan bellek ayarları.
  • Özel izin dizeleri içeren manifest sınıfı artık şu öğe tarafından oluşturulmuyor: varsayılan: Sınıfı oluşturmak istiyorsanız android.generateManifestClass = true.

Android Studio 3.6'da düzeltildi

  • LineageOS'te APK yükleme hatası: Uygulamanızı cihazlara dağıtma LineageOS veya CyanogenMod sürümlerinin belirli sürümlerini çalıştırmak, INSTALL_PARSE_FAILED_NOT_APK istisnası.

    Android Studio 3.6 Beta 1 ve sonraki sürümlerde IDE bu istisnayı şu şekilde işler: uygulamanızı dağıttığınızda tam uygulama yükleme işlemi gerçekleştirme veya CyanogenMod cihazlara kopyalaması nedeniyle daha uzun dağıtım kez.

Android Studio 3.5.2'de düzeltildi

  • Bozuk XML kodu stili: XML kodunu düzenlerken IDE, XML kodu düzenlerken Kod > Kodu menü çubuğu.

Android Studio 3.3.1'de düzeltildi

  • C++ tabanlı projeler taranırken bellek yetersiz hataları: Gradle taramaları sırasında aynı sürücüde birden fazla konumda C++ kodu bulunan bir proje, tarama, ilk ortak dizin altındaki tüm dizinleri içerir. Tarama çok sayıda dizin ve dosya varsa bellek yetersiz olabilir.

    Bu sorunla ilgili daha fazla bilgi için şununla ilişkili hata: .