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:
- Dosya > seçeneğini tıklayarak Ayarlar penceresini açın. Ayarlar
- Görünüm ve Davranış > Görünüm.
- Özel yazı tipi kullan'ı seçin.
- Yazı tipi boyutunu artırın.
- Ayarlar penceresinde Düzenleyici > Yazı Tipi.
- 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 - "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:
- Öncelikle, SDK Yöneticisi
- MacOS'te Sistem Tercihleri > Güvenlik ve Gizlilik.
"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.
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'ı
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.
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:
- Android Studio'da Araçlar >
SDK Manager'ı seçin veya SDK Yöneticisi'ni tıklayın.
tıklayın.
- 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.
- 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öreviUP-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: .