Güncellenmiş içeriği kontrol etmek için web'deki bir içerik kaynağına düzenli olarak bağlanmak (örneğin saatlik) için bir arka plan işlemi kullanan bir android kodu var. Yeni kullanıcılar uygulamayı indirdikçe ve ilk kez çalıştırdıkça, bu ilk çalıştırma durumunda, sunucularımız için DNS'nin zaten cihazda önbelleğe alınmadığı anlaşılıyor. Bu ilk seri bağlantılardan korkma UnknownHostException ile başarısız: Host çözülmez ve tabii ki, uygulama daha sonra tekrar dener ve (yine, "gibi görünüyor") hepsi çalışıyor - belki işletim sistemi gerçekten çözmek için zaman vardı çünkü . adresAndroid java.net.UnknownHostException: Ana makine çözülmemiş (strateji sorusu)
Yani, sorum (ler) şunlardır: (1) diğer Android geliştiricileri de onların dağıtılan uygulamaları ile bu davranışı görüyor musunuz İlk kez, daha sonra kendilerini egzersiz sorunlar "çözülmemiş barındırmak" bir dizi (?. 2) Herkesin ilk gerçek bağlantıları işe yarayacak şekilde "DNS'i ısıtmak" için daha iyi bir stratejisi var mı, yoksa belki de bu istisna ile karşılaştığınız zaman bazı geri dönüş döngüleri ile yeniden deneyiniz mi? siyon? Sunucumuzdan küçük bir metin dosyasını almaya çalışan ve bunu gelinceye kadar sadece bir döngü oluşturmayı düşünen ve belki de (bu kısımdan emin değil) diğer giden ağ bağlantılarını başarılı olana kadar engelleyen ayrı bir iş parçacığına sahip olmayı düşünmekteydim. Her halükarda
, burada yığın taşması üzerinde çeşitli benzer ifadeli sorulara cevaplar bir yığın içinden okudum ve sadece<uses-permission android:name="android.permission.INTERNET" />
benim Manifest dosyasında ayarlanmış olduğunu herkes sağlamak için :)
Aynı sorunla karşılaştık. Analiz etmek için, paketi varsayılan bir dns'e (8.8.8.8) gönderen bir icmp ping'i uyguladık. Gözlemlediğimiz şey, ip ping testinin başarılı olmasına rağmen (bu nedenle bir İnternet bağlantısı mevcut olsa da) UnknownHostException ile karşılaştık. Bunun sebebi ne olabilir? – icyerasor