Bu sayfada, Android Studio Koala ve Android Gradle eklentisi 8.5.0 ile ilgili bilinen sorunlar izlenir. Burada belirtilmeyen bir sorunla karşılaşırsanız lütfen hata bildiriminde bulunun.
Önizlemek için yükseltme: Android Studio ve Android Gradle eklentisinin her sürümü, kararlılığı ve performansı iyileştirip yeni özellikler eklemeyi amaçlar. Yakında yayınlanacak sürümlerin avantajlarından hemen yararlanmak için Android Studio Önizlemesi'ni indirip yükleyin.
Android Studio ile İlgili Bilinen Sorunlar
Bu bölümde, Android Studio'nun en son kararlı sürümündeki bilinen sorunlar açıklanmaktadır.
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 Düzen Denetleyici'yi kullanarak bir görünümü ayırma özelliği geçici olarak kullanılamamaktadır. 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'ni kullanırken tüm Compose düğümlerinin denetlenebilir olmadığını fark ederseniz bunun nedeni büyük olasılıkla Compose 1.5.0-alpha04 sürümünde düzeltilmiş olan bir hatadır. Bu sorunla karşılaşıyorsanız Compose'un 1.5.0-alpha04 veya sonraki sürümüne geçtiğinizden emin olun.
Oluşturma Önizlemesi oluşturulurken hata oluştu
Android Studio Chipmunk'tan başlayarak, sorunlar panelinde java.lang.NoSuchFieldError: view_tree_saved_state_registry_owner
veya java.lang.ClassNotFoundException: androidx.savedstate.R$id
ifadesini görüyorsanız modülünüze androidx.lifecycle:lifecycle-viewmodel-savedstate
öğesine debugImplementation
bağımlılığı eklediğinizden emin olun.
Sorunlar panelinde java.lang.NoSuchFieldError: view_tree_lifecycle_owner
görüyorsanız modülünüze androidx.lifecycle:lifecycle-runtime
öğesine debugImplementation
bağımlılığı eklediğinizden emin olun.
Sorunlar panelinde java.lang.NoClassDefFoundError: Could not initialize class androidx.customview.poolingcontainer.PoolingContainer
veya java.lang.NoClassDefFoundError: androidx/customview/poolingcontainer/PoolingContainerListener
görüyorsanız modülünüze androidx.customview:customview-poolingcontainer
debugImplementation
bağımlılığı eklediğinizden emin olun.
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, imzalama anahtarları ile ilgili temel bir davranış değişikliğine neden olur.
Derleme > İmzalı Paket / APK Oluştur'a gidip bir uygulama paketi veya APK için uygulama imzalamayı yapılandırmaya çalıştığınızda, anahtar ve anahtar deposu için farklı şifreler girmeniz aşağıdaki hatayı verebilir:
Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores
Bu sorunu çözmek amacıyla hem anahtar hem de anahtar deposu için aynı şifreyi girin.
Android Studio, 4.2 sürümü yüklendikten sonra başlamıyor
Studio, önceki .vmoptions dosyasını içe aktarmaya ve bunları JDK 11 tarafından kullanılan çöp toplayıcı ile çalışacak şekilde arındırmaya çalışır. Bu işlem başarısız olursa IDE, .vmoptions dosyasında özel sanal makine seçenekleri ayarlayan belirli kullanıcılar için başlatılmayabilir.
Bu sorunu çözmek için .vmoptions içindeki özel seçenekleri ("#" karakterini kullanarak) yorumlamanızı öneririz. .vmoptions dosyası aşağıdaki konumlarda bulunabilir:
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 geçici çözümü denedikten sonra Studio hâlâ başlamıyorsa aşağıdaki Yükseltme işleminden sonra Studio başlamıyor konusuna bakın.
Android 11 emülatöründe Veritabanı İnceleyici kilitlenmesi kullanan uygulamalar
Veritabanı İnceleyici'yi kullanan uygulamalar, Android 11 emülatörüyle çalışırken kilitlenebilir. Bunun için logcat'te aşağıdaki gibi bir hatayla karşılaşabilirsiniz:
Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
Bu sorunu düzeltmek için Araçlar > SDK Yöneticisi'ne giderek Android 11 emülatörünüzü sürüm 9 veya sonraki bir sürüme yükseltin. SDK Platformları sekmesinde Paket Ayrıntılarını Göster etiketli kutuyu işaretleyin ve Android 11 emülatörünün 9 veya sonraki bir sürümünü seçin.
Yeni sürüme geçişten sonra Studio açılmıyor
Yeni sürüme geçişten sonra Studio çalışmıyorsa sorunun nedeni Android Studio'nun önceki sürümünden içe aktarılan geçersiz bir Android Studio yapılandırması veya uyumsuz bir eklenti olabilir. Geçici bir çözüm olarak, Android Studio sürümüne ve işletim sistemine bağlı olarak aşağıdaki dizini silmeyi (veya yedekleme amacıyla yeniden adlandırmayı) deneyin ve Android Studio'yu yeniden başlatmayı deneyin. Bu işlem, Android Studio'yu tüm üçüncü taraf eklentileri kaldırılmış olarak varsayılan durumuna sıfırlar.
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 Studio'nun Canary ve Beta sürümleri için yapılandırma dizininin, <version>
için X.Y
yerine PreviewX.Y
olduğunu unutmayın. Örneğin, Android Studio 4.1 Canary derlemeleri, Sürüm Adayları ve Kararlı sürümleri için kullanılan AndroidStudio4.1
dizini yerine AndroidStudioPreview4.1
yöntemini kullanır.
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 klavye kısayolları ile KDE ve GNOME gibi popüler pencere yöneticilerinin kısayollarıyla çakışır. Bu çakışan klavye kısayolları Android Studio'da beklendiği gibi çalışmayabilir.
Bu sorunla ilgili daha fazla bilgiyi (potansiyel geçici çözümler dahil) IntelliJ'in hata izleyicisinde bulabilirsiniz.
ChromeOS'te küçük kullanıcı arayüzü metni
ChromeOS'te metin, önceki sürümlerden çok daha küçük görünebilir. Bu sorunu çözmek için aşağıdakileri yapın:
- Dosya > Ayarlar'ı tıklayarak Ayarlar penceresini açın.
- Görünüm ve Davranış > Görünüm'e gidin.
- Özel yazı tipi kullan'ı seçin.
- Yazı tipi boyutunu artırın.
- Ayarlar penceresinde Düzenleyici > Yazı Tipi'ne gidin.
- Yazı tipi boyutunu artırın.
- Tamam'ı tıklayın.
Kod düzenleme
Bu bölümde, kod düzenleyiciyle ilgili bilinen sorunlar açıklanmaktadır.
Klavye girişi dondu - Linux'ta "iBus" sorunları
Linux ve Android Studio'daki iBus arka plan programı arasında bilinen bazı etkileşimler vardır. Bazı senaryolarda IDE, klavye girişine yanıt vermeyi bırakır veya rastgele karakterler girmeye başlar. Bu hata, iBus ile XLib + AWT arasındaki bazı eksik senkronizasyonlar nedeniyle tetiklenmiştir ve yukarı akış yönünde JetBrains ve iBus'a bildirilmiştir. Bu sorun için üç geçici çözüm vardır:
- Geçici Çözüm 1: iBus'u eşzamanlı modda kullanmaya zorlayın. Android Studio'yu başlatmadan önce 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 yalnızca Android Studio için devre dışı bırakmak üzere 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. Android Studio çalışırken arka planı yeniden başlatırsanız (örneğin,ibus-daemon -rd
çalıştırarak) diğer tüm uygulamalar için giriş yöntemlerini etkili bir şekilde devre dışı bırakır ve ayrıca, segmentasyon hatasıyla Android Studio'nun JVM'sini kilitleyebilirsiniz. - Geçici Çözüm 3: Sonraki giriş kısayolu, aynı zamanda Android Studio'daki kod tamamlama kısayolu olduğundan
Ctrl+Boşluk tuşu olarak ayarlanmadığından emin olmak için kısayol bağlamalarını tekrar kontrol edin. Ubuntu 14.04 (Trusty), Super+Space'i varsayılan kısayol haline getirir ancak önceki
sürümlerin ayarları hâlâ mevcut olabilir. Kısayol bağlamalarınızı kontrol etmek için, komut satırında
ibus-setup
komutunu çalıştırarak IBus Tercihleri penceresini açın. Klavye Kısayolları bölümünde Sonraki giriş yöntemi'ni işaretleyin. Control+Boşluk tuşu olarak ayarlanmışsa bunu Süper+Boşluk veya istediğiniz başka bir kısayol olarak değiştirin.
Proje yapılandırması
Bu bölümde proje yapılandırması ve Gradle senkronizasyonuyla ilgili bilinen sorunlar açıklanmaktadır.
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
bölümüne aşağıdaki komutu girin:export _JAVA_OPTIONS="-Djava.net.preferIPv6Addresses=true"
- Geçici Çözüm 2: Android Studio'nun vmoptions dosyasında
-Djava.net.preferIPv4Addresses=true
satırını şu şekilde değiştirin:-Djava.net.preferIPv6Addresses=true
Daha fazla bilgi için Ağ iletişimi IPv6 Kullanıcı Rehberi'ne bakın.
Gradle senkronizasyonu veya SDK Yöneticisi'nden gelen "eş kimliği doğrulanmadı" hataları
Bu hataların temel nedeni, $JAVA_HOME/jre/lib/certificates/cacerts
ürünündeki bir sertifikanın eksik olmasıdır. Bu hataları gidermek için aşağıdaki adımları uygulayın:
- Bir proxy kullanıyorsanız doğrudan bağlanmayı deneyin. Doğrudan bağlantı çalışıyorsa proxy aracılığıyla bağlanmak için
keytool
kullanarak proxy sunucusunun sertifikasını cacerts dosyasına eklemeniz gerekebilir. - Desteklenen, değiştirilmemiş bir JDK'yı yeniden yükleyin. Ubuntu kullanıcılarını etkileyen bilinen bir sorun vardır ve bu durum boş
/etc/ssl/certs/java/cacerts
ile sonuçlanır. Bu sorunu çözmek için komut satırında aşağıdaki komutu yürütün:sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure
Dağıtılıyor
Bu bölümde, uygulamanızı bağlı bir cihaza dağıtmayla ilgili bilinen sorunlar açıklanmaktadı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, Gradle 7.0 ve sonraki sürümleri gerektirdiğinden Android Gradle eklentisi 7.0 ve sonraki sürümlerini etkilemektedir. Gradle 7.0'dan itibaren dosya izleme varsayılan olarak etkindir.
Mac OS'te çalışıyorsanız ve projeniz /System/Volumes/Data
altına kaydedildiyse, Gradle dosyası izleme dosya değişikliklerini düzgün şekilde izlemez.
Bu, Derleme Sistemi'nin herhangi bir dosya değişikliği görmemesine neden olur ve APK'ları güncellemez. Yerel APK durumu cihazdaki durumla aynı olduğundan artımlı dağıtım kodu hiçbir şey yapmaz.
Bu sorunu çözmek için projenizin dizinini, /Users/username
altındaki kullanıcı dizininize taşımalısınız. Ardından Build Sistemi, Gradle dosya izleme yoluyla dosya değişiklikleri hakkında doğru bir şekilde bilgilendirilir ve artımlı değişiklikler başarıyla uygulanır.
macOS High Sierra'da Android Emülatör HAXM
macOS High Sierra'daki (10.13) Android Emulator, macOS ile en iyi uyumluluk ve kararlılık için HAXM 6.2.1 veya daha yeni bir sürüm gerektirir. Ancak macOS 10.13'te, HAXM gibi çekirdek uzantılarının yüklenmesi daha karmaşık bir süreçtir. Çekirdek uzantısının yüklenmesine aşağıdaki şekilde manuel olarak izin vermeniz gerekir:
- Öncelikle, SDK Yöneticisi'nden HAXM'nin en son sürümünü yüklemeyi deneyin.
- MacOS'te Sistem Tercihleri > Güvenlik ve Gizlilik bölümüne gidin.
"Intel Corporation Apps" geliştiricisine ait sistem yazılımının yüklenmesinin engellendiğini belirten bir uyarı görürseniz İzin ver'i tıklayın:
Daha fazla bilgi ve geçici çözümler için bu Apple web sayfasına ve 62395878 numaralı sorunu inceleyin.
Değişiklikleri Uygulama
Bu bölümde, Değişiklikleri Uygulama ile ilgili bilinen sorunlar açıklanmaktadır.
Yeni uygulama adı uygulanmadı
Uygulamanızı yeniden adlandırıp ardından bu değişikliği uygulamaya çalışırsanız güncellenen ad yansıtılmayabilir. Bu sorunu çözmek için Çalıştır'ı tıklayarak uygulamanızı yeniden dağıtın ve değişikliklerinizi görün.
Android Çalışma Zamanı'ndaki sorun hata veriyor
Android 8.0 veya 8.1 çalıştıran bir cihaz kullanıyorsanız belirli değişiklik türlerini uygulamaya çalışırken (özellikle Kotlin kullanıyorsanız) "VERIFICATION_ERROR" mesajlarıyla karşılaşabilirsiniz. Bu mesaj, Android 9.0 ve sonraki sürümlerde düzeltilen bir Android Çalışma Zamanı sorunundan kaynaklanmaktadır. Bu sorun, Değişiklikleri Uygula'nın başarısız olmasına yol açsa da değişikliklerinizi görmek için uygulamanızı tekrar çalıştırabilirsiniz. Ancak cihazınızı Android 9.0 veya sonraki bir sürüme yükseltmenizi öneririz.
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 IDE'den test çalıştırırken bu kaynaklar bulunamaz. Komut satırından Gradle ile testler yapmak işe yarayacaktır. Gradle check
görevini entegre geliştirme ortamından
yürütülmek de işe yarayacaktır. Daha fazla ayrıntı için 64887 numaralı sorunu inceleyin.
Bu sorunun nedeni, sınıf yolu olarak yalnızca tek bir klasörün olmasını gerektiren IntelliJ 13'ten itibaren geçerlidir. IntelliJ'in oluşturucusu, tüm kaynakları bu derleme klasörüne kopyalar ancak Gradle, kaynakları kopyalamaz.
- 1. Geçici Çözüm: Birim testi çalıştırmak yerine Gradle
check
görevini IDE'den çalıştırın. - Geçici Çözüm 2: Kaynakları derleme klasörüne manuel olarak kopyalamak için derleme komut dosyanızı güncelleyin. Daha fazla bilgi için 13. yoruma bakın.
JUnit testlerini çalıştırmak, kodu iki kez derleyebilir
Yeni bir proje oluştururken, şablon JUnit yapılandırması iki "Lansmandan önce" adımıyla oluşturulabilir: Yapma ve Gradle-Duyarlı Yapma. Bu yapılandırma daha sonra oluşturulan tüm JUnit çalıştırma yapılandırmalarına dağıtılır.
- Mevcut projeyle ilgili sorunu düzeltmek için Çalıştır > Yapılandırmaları Düzenle'yi tıklayın ve varsayılan JUnit yapılandırmasını yalnızca Gradle-Duyarlı Yapma adımını içerecek şekilde değiştirin.
- Gelecekteki tüm projelerde bu sorunu düzeltmek için Dosya > Projeyi Kapat'ı tıklayın. Karşılama ekranını göreceksiniz. Ardından Yapılandır > Proje Varsayılanları > Yapılandırmaları Çalıştır'ı tıklayın ve JUnit yapılandırmasını yalnızca Gradle-Aware Yapma adımını içerecek şekilde değiştirin.
Bazı test çalıştırma yapılandırmaları çalışmıyor
Bir test yöntemini sağ tıkladığınızda kullanılabilen tüm çalıştırma yapılandırmaları geçerli değildir. Özellikle aşağıdaki yapılandırmalar geçerli değildir:
- Gradle çalıştırma yapılandırmaları (simge olarak Gradle logosu) çalışmaz.
- JUnit çalıştırma yapılandırmaları (yeşil Android simgesi olmadan), yerel JVM'de çalıştırılamayan araç testlerine uygulanmaz.
Yerel kodda hata ayıklarken Java ayrılma noktaları ekleme
Uygulamanız yerel kodunuzdaki bir ayrılma noktasında duraklatılmışken Otomatik ve Çift hata ayıklayıcıları, ayarladığınız yeni Java kesme noktalarını hemen tanımayabilir. Bu sorunu önlemek için hata ayıklama oturumu başlatmadan önce veya uygulama bir Java kesme noktasında duraklatılmışken Java kesme noktaları ekleyin. Daha fazla bilgi için 229949 numaralı sorunu inceleyin.
Yerel hata ayıklayıcıdan çıkma
AutoAutoAutoJava adresli Java satır kodunuzda bir yerel işlevde hata ayıklayıp duraklatmak üzere Java ve yerel kodda hata ayıklayıcı</br class="ph-1-1"> hata ayıklayıcıyı kullanın: Java ve yerel kodda hata ayıklamak için Java ve yerel kodunuzda hata ayıklamak için <br class="ph-1-1-10 ile JavaScript. ile.your-module Daha fazla bilgi için 224385 numaralı sorunu inceleyin.
Kitaplıklar yüklenirken yerel hata ayıklayıcı kilitleniyor
Android Studio 4.2 ve sonraki sürümlere geçtikten sonra yerel hata ayıklayıcıyı ilk kez kullanırken yerel hata ayıklayıcı, Android cihazdan kitaplık yüklerken yanıt vermeyi durdurabilir. Bu sorun, hata ayıklayıcıyı durdurup yeniden başlatsanız bile devam eden sabit bir sorundur. Bu sorunu düzeltmek için $USER/.lldb/module-cache/
adresindeki 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ıyı başlatırken ortaya çıkar. Yerel hata ayıklayıcının gerektirdiği kitaplıklardan birinin yerel sistemde yüklü olmadığını gösterir. Eksik kitaplığın adı idea.log
dosyasında zaten yazdırılmış olabilir. Öyle değilse bir terminal kullanarak Android Studio yükleme dizinine gidebilir ve hangi kitaplıkların eksik olduğunu öğrenmek için bin/lldb/bin/LLDBFrontend --version
komut satırını yürütebilirsiniz. Yakın zamanda kullanılan bazı Linux dağıtımları zaten ncurses6
sürümüne yükseltildiğinden eksik kitaplık genellikle ncurses5
şeklindedir.
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çenek, gelecekteki bir sürümde kullanıma sunulacaktır.
Geçici bir çözüm olarak, başlangıç profillerini yakalamak için Perfetto bağımsız komut satırı profil aracını kullanabilirsiniz.
CPU Profiler'da zaman aşımı hataları
Örnek Java Yöntemleri veya Trace Java Yöntemleri yapılandırmalarını seçtiğinizde Android Studio CPU Profiler'da "Kayıt duramadı" hatalarıyla karşılaşabilirsiniz. Bunlar, özellikle idea.log
dosyasında aşağıdaki hata mesajını görüyorsanız genellikle zaman aşımı hatalarıdır:
Wait for ART trace file timed out
Zaman aşımı hataları, örneklenen yöntemlere kıyasla izleme yöntemlerinden daha fazla ve kısa kayıtlara kıyasla uzun kayıtları etkileme eğilimindedir. Geçici bir çözüm olarak, hatanın ortadan kalkıp kalkmadığını görmek için daha kısa kayıtları denemek faydalı olabilir.
Profiler'da zaman aşımı sorunları yaşıyorsanız lütfen cihazlarınızın marka/modelini ve idea.log
ile logcat'teki ilgili girişleri içeren bir hata bildiriminde bulunun.
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 kullanıcıları düzgün çalışmayabilir. Bu nedenle, Yardım > Günlüğü Göster'i seçtiğinizde idea.log
dosyasında "AdbCommandReddedilenException" veya "Bağlantı noktası bağlanamadı" ifadesini görebilirsiniz. Platform Tools'u 29.0.4 veya sonraki bir sürüme
yükseltmek her iki sorunu da düzeltir.
Platform Araçları'nı yükseltmek için aşağıdakileri yapın:
- Android Studio'da Araçlar > SDK Yöneticisi'ni veya araç çubuğunda SDK Yöneticisi'ni tıklayarak SDK Manager'ı açın.
- Android SDK Platform Araçları'nın yanındaki onay kutusunu işaretleyerek bir onay işareti görüntülenmesini sağlayın. Sol sütunda bir indirme simgesi görünecektir.
- 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ışı penceresinde görünmesini engeller. Derleme çalıştırılır ve Derleme Çıkışı sekmesi görüntülenir ancak yazdırılmış bir çıkış yoktur (sorun numarası 204791544).
Yükleme siparişi başlatmayı engelliyor
Android Studio'nun eski bir sürümden önce yeni bir sürümünü yüklemek, eski sürümün başlatılmasını engelleyebilir. Örneğin, önce Android Studio'nun canary sürümünü yükler, ardından kararlı sürümü yükleyip çalıştırmayı denerseniz kararlı sürüm başlatılmayabilir. Bu gibi durumlarda kararlı (eski) sürümün başlatılması için önbelleği temizlemeniz gerekir. macOS'te önbelleği temizlemek için Library/ApplicationSupport/Google/AndroidStudioversion_number
dizinini silin. Windows'da, önbelleği temizlemek için Disk Temizleme'yi kullanın.
Espresso Test Kaydedici, Oluşturma işleviyle çalışmıyor
Espresso Test Kaydedici, Compose'u içeren projelerde çalışmaz. Compose'u içeren projeler için kullanıcı arayüzü testleri oluşturmak istiyorsanız Oluşturma düzeninizi test etme bölümüne bakın.
Logcat kısayolu, İngilizce olmayan klavye düzenleriyle çakışıyor
İngilizce olmayan bir klavye düzeni kullanıyorsanız varsayılan Logcat klavye kısayolu, düzenle çakışabilir ve Android Studio'da metin düzenlerken belirli karakterleri yazmanıza engel olabilir. Bu sorunu çözmek için çakışan Logcat tuş eşlemesini silin veya yeniden eşleyin. Android Studio'da Logcat tuş eşlemelerini düzenlemek için Android Studio > Ayarlar > Tuş eşleme'ye gidin ve tuş eşleme listesinde Logcat
öğesini arayın. Daha fazla bilgi için sorun #263475910'a bakın.
Bu sorun, Android Studio Elektrikli Eel Patch 1'deki Logcat kısayolunun kaldırılmasıyla çözülecektir.
Android Gradle Eklentisi ile ilgili bilinen sorunlar
Bu bölümde, Android Gradle eklentisinin en son kararlı sürümündeki bilinen sorunlar açıklanmaktadır.
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, aynı zamanda uygulama bağımlılıkları (sorun numarası 191977888) olmadığı sürece dinamik özellik kitaplığı bağımlılıkları kontrol edilmez.
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şı karakterleri içeren dosya adlarını desteklemez (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'yi kullanma yeni eklentiyle bozulur. Bu yöntemle, derleme sırasında APK adını değiştirmek gibi basit görevlerde de (aşağıda gösterildiği gibi) çalışmaya devam eder:
// 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
nesnelerine erişimi içeren daha karmaşık görevler artık çalışmamaktadır. Bunun nedeni, artık yapılandırma aşamasında varyanta özel görevlerin oluşturulmamasıdır. Bu, eklentinin tüm çıkışlarını önceden bilmemesine neden olur ancak yapılandırma sürelerini kısaltır.
manifestÇıkışFile artık kullanılamıyor
processManifest.manifestOutputFile()
yöntemi artık kullanılamıyor ve yöntemi çağırdığınızda şu hatayı alıyorsunuz:
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 bir varyantın manifest dosyasını almak için manifestOutputFile()
çağrısı yapmak yerine, oluşturulan tüm manifestleri içeren dizinin yolunu döndürmek için processManifest.manifestOutputDirectory()
yöntemini çağırabilirsiniz. Daha sonra bir manifesto bulabilir ve mantığınızı ona uygulayabilirsiniz. Aşağıdaki örnek, manifest'teki sürüm kodunu dinamik olarak 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 AGP 7.3.0 ile KAPT kullanımı, belirli derleme varyantları için AIDL kaynak gruplarının kaldırılmasına neden olur. main/
, derleme türleri, ürün çeşitleri ve ürün aroma kombinasyonları dahil olmak üzere diğer AIDL kaynak gruplarını kullanmaya devam edebilirsiniz. Varyanta özgü 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. Bu sorunlardan herhangi birini yaşıyorsanız Android Studio'yu en son kararlı sürüme veya önizleme sürümüne güncellemeniz gerekir.
Android Studio 2021.1.1'de düzeltildi
- Eksik lint çıkışı: lint görevi
UP-TO-DATE
olduğunda,stdout
ürününe yazdırılan lint metni çıkışı olmaz (sorun numarası 191897708). AGP 7.1.0-alpha05 sürümünde düzeltilmiştir. - Hilt eklentisini kullanan bir uygulama projesinin birim testiyle ilgili sorunlar: Birim test sınıf yolu, araçsız uygulama sınıflarını içerir. Diğer bir deyişle Hilt, birim testlerini çalıştırırken uygulama sınıflarını bağımlılık ekleme işlemini yapacak şekilde ayarlamaz (213534628 numaralı sorun). AGP 7.1.1'de düzeltildi.
Android Studio 2020.3.1'de düzeltildi
- Kotlin projelerinde Lint istisnaları:
checkDependencies = true
değerini ayarlayan Kotlin projeleri, 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: Bir iletişim kutusunu açtığınızda Android Studio 4.1 donabilir.
Android Studio 4.1'de düzeltildi
- IDE'nin önceki sürümünden bellek ayarlarını uygulamak için yeniden başlatma: Android Studio'yu güncelledikten sonra, IDE'nin önceki bir sürümünden taşınan bellek ayarlarını uygulamak için Android Studio'yu yeniden başlatmanız gerekir.
- Özel izin dizeleri içeren manifest sınıfı artık varsayılan olarak oluşturulmuyor: Sınıfı oluşturmak istiyorsanız
android.generateManifestClass = true
değerini ayarlayın.
Android Studio 3.6'da düzeltildi
LineageOS'te APK yükleme hatası: Uygulamanızı LineageOS veya CyanogenMod'un belirli sürümlerini çalıştıran cihazlara dağıtmak, başarısız olabilir ve
INSTALL_PARSE_FAILED_NOT_APK
istisnasına yol açabilir.Android Studio 3.6 Beta 1 ve sonraki sürümlerde IDE, bu istisnayı uygulamak için uygulamanızı LineageOS veya CyanogenMod cihazlara dağıttığınızda tam uygulama yükleme gerçekleştirerek daha uzun dağıtım sürelerine neden olabilir.
Android Studio 3.5.2'de düzeltildi
- Bozuk XML kod stili: Menü çubuğundan Kod > Kodu Yeniden Biçimlendir seçeneğini belirlediğinizde XML kodunu düzenlerken IDE yanlış bir kod stili uyguluyordu.
Android Studio 3.3.1'de düzeltildi
C++ tabanlı projeler taranırken bellek yetersiz hataları: Gradle aynı sürücüde birden fazla konumda C++ kodu bulunan bir projeyi taradığında tarama, ilk ortak dizinin altındaki tüm dizinleri içerir. Çok sayıda dizin ve dosyanın taranması, bellek yetersizliği hatalarına neden olabilir.
Bu sorunla ilgili daha fazla bilgi için sorunla ilişkili hatayı okuyun.