Telefonumu Gingerbread'a bugün güncelledim (2.3.2) ve geliştirdiğim bir uygulamayı başlattım ve verilerini yüklemediğini gördüm. Uygulama, Android'in diğer her sürümünde 1.6'dan 2.2'ye kadar test ettim, ancak Gingerbread'da bir IOException uyguluyor. GZipInputStream veya URL.openStream() öğesinde bir şey değişip değişmediğini bilen var mı?GZIPInputStream, Android 2.3'te IOException ile başarısız oluyor, ancak önceki tüm sürümlerde iyi çalışıyor mu?
sorunlu kod aşağıdaki benzer: 2.2 1.6, bu kod 2.3 de, gayet iyi çalışıyor
InputStream in = null;
GZIPInputStream zin = null;
URL url = null;
try {
url = new URL("http://www.test.com/gzipped_data.gz");
in = url.openStream();
zin = new GZIPInputStream(in);
}
catch (MalformedURLException e) {
return false;
}
catch (IOException e) {
return false;
}
sihirli blok yanlış olma konusunda bir mesajla bir IOException olsun. MIME türünü veya bu verilerdeki bir şeyi dağıtan openStream ile bir şeyler değiştiğini varsayıyorum. OpenStream'in HTTP bağlantılarını ele almanın en güvenilir yolu olmadığı diğer yerleri okudum, bu yüzden bağlantı kodumu yeniden düzenlemek için iyi bir bahane olabilir.
HttpClient'i kullanmak için kodu değiştirir ve üzerinde bir HttpGet isteği kullanırsam iyi çalışır. URL.openStream() işlevinde bir şey kırılmış olmalıdır. Oh, umarım bu, bir başkasını bir süre daha kurtarmaya yardımcı olur. –