3

我的應用程序必須顯示從Web服務作爲InputStream獲取的圖像數據的圖像預覽。 InputStream被解碼爲位圖以在ImageView中顯示。整個流程在Android 2.2和2.3中運行良好,而Android 3.0和4.0無法運行。在後一種情況下解碼的位圖是空的,而在2.x中它很好。問題從Android 3.0及以上版本的Web服務獲取InputStream時加載ImageView

這裏是代碼片段我用..

ImageView imgView = (ImageView) findViewById(R.id.image);  
String imageUrl = "my webservice url";  
HttpClient httpClient = new DefaultHttpClient(); 
HttpGet mHttpGetEntity = new HttpGet(imageUrl); 
HttpResponse response; 
try { 
    response = httpClient.execute(mHttpGetEntity); 
    XmlPullParser xpp = XmlPullParserFactory.newInstance().newPullParser();  
    InputStream is = response.getEntity().getContent(); 
    xpp.setInput(is, "UTF-8"); 
    // use xpp for process 
    imgView.setImageBitmap(BitmapFactory.decodeStream(is));   
} catch (ClientProtocolException e) { 
    e.printStackTrace(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

我怎樣才能使這項工作即使有以上的Android 3.0。請指教。

回答

1

你的代碼在4.0上運行的很好。我會說,不要擔心3.0,因爲它是不穩定的版本,沒有人會使用它。

+0

我在Google Nexus和Galaxy Tab 10.1中試過,兩種情況下,它都不起作用。那麼問題是什麼? – 2012-03-31 07:02:15

+0

你有互聯網連接權限嗎?當我第一次在我的測試應用中測試它時,我得到了同樣的結果,然後我記得我需要互聯網許可。我使用這個圖像http://ikailansays.files.wordpress.com/2008/12/n506957763_68091.jpg它不是我tho ... – 2012-03-31 07:04:32

+0

是的權限是我在這裏發佈的示例應用程序缺少的!但是問題仍然存在於我的應用程序中,它涉及解析響應的額外任務。更新我的代碼上面 – 2012-03-31 08:58:43

相關問題