CLEARTEXT communication not permitted
Hata metni
java.net.UnknownServiceException: CLEARTEXT communication to api.example.com not permitted by network security policy
Neden
Android 9 ve üstünde http:// istekleri varsayılan olarak engellenir. Uygulama şifrelenmemiş bir adrese bağlanmaya çalışıyor.
Adım adım çözüm
- En iyi çözüm: sunucuyu
https://ile sun ve adresi değiştir. - Yalnız yerel test için
network_security_config.xmloluştur ve belirli alan adına (10.0.2.2,localhost) izin ver. - Dosyayı
<application android:networkSecurityConfig=...>içinde göster. - Tüm trafik için
usesCleartextTraffic="true"yazma, yalnız debug derlemede tut. - Release APK'yı gerçek telefonda dene: orada ağ hatası beyaz ekrana dönüşebilir.
Örnek komutlar
<!-- res/xml/network_security_config.xml -->
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">10.0.2.2</domain>
</domain-config>
</network-security-config>
<application android:networkSecurityConfig="@xml/network_security_config" ...>Tekrarlanmasın diye
Release'te yalnız HTTPS kullan, http iznini debug klasöründe tut.
Yazar ve lisans: Nibras Code
- APK kurulmuyor
- Parse error nedir?
- Keystore kayboldu
- İmzalar uyuşmuyor
- Paket adı hatası
- APK dosyası bozuldu
- Play Protect engelliyor
- Paket geçersiz görünüyor
- Depolama yetmiyor
- Telefon uyumlu değil
- Eski sürüm kurulmuyor
- XAPK kurulmuyor
- Gradle sync başarısız
- Bağımlılık çözülemedi (Could not resolve)
- Duplicate class hatası
- Manifest merger failed
- Dex sınırı: 65536 metot
- R8: Missing class
- JDK sürümü uyumsuz
- SDK location not found
- minSdkVersion çakışması
- compileSdk çok düşük
- EAS build: Gradle hatası
- expo prebuild hatası
- Metro: Unable to resolve module
- Hermes: yalnızca release'te JS hatası
- Release'te beyaz ekran
- Kırmızı ekran: Metro'ya bağlanamıyor
- Expo SDK uyumsuzluğu
- Capacitor sync hatası
- Capacitor: beyaz ekran
- EAS: keystore ve credentials hatası
- Keystore tampered / parola yanlış
- Anahtar alias'ı ya da parolası yanlış
- Play: yanlış anahtarla imzalanmış
- INSTALL_FAILED_UPDATE_INCOMPATIBLE
- INSTALL_FAILED_VERSION_DOWNGRADE
- INSTALL_FAILED_INSUFFICIENT_STORAGE
- INSTALL_FAILED_NO_MATCHING_ABIS
- Parse hatası (paket ayrıştırılamadı)
- «App not installed» hatası
- AAB dosyasını telefona kurmak
- adb: cihaz «unauthorized»
- adb: cihaz bulunamıyor
- adb server sürüm uyumsuzluğu
- Activity class does not exist
- Play: targetSdk seviyesi düşük
- Play: izin politikası reddi
- Play: 64-bit şartı
- Play: versionCode zaten kullanılmış
- ClassNotFound / NoSuchMethod çökmesi
- OutOfMemoryError çökmesi
- SecurityException: izin verilmedi