2011-09-29 230 views
0

我在解析XML文件時遇到了問題,我使用newsRSS解析器作爲參考。但是我在實際的device.how中收到此錯誤顯示一條錯誤消息,如警告用戶,讓他留在應用程序沒有崩潰?java.lang.RuntimeException:java.net.UnknownHostException:主機未解決:

這是做連接和解析代碼的和平:

protected Config_Parser(String feedUrlString,Context context){ 
    this.context = context; 
    try { 
    this.feedUrl = new URL(feedUrlString); 
    } catch (MalformedURLException e) { 
    throw new RuntimeException(e); 
    } 
} 
protected InputStream getInputStream() { 
    try { 
    return feedUrl.openConnection().getInputStream(); 
    } catch (IOException e) { 
    Log.e("Error", "error happned"); 
    return null; 
    //throw new RuntimeException(e); 
    } 
} 

我怎麼可以處理這個錯誤與發送警報給用戶沒有崩潰或退出應用程序?

感謝您的幫助:)

+0

您的日誌消息不是很有幫助。它沒有給出任何錯誤實際上的跡象。 – unholysampler

回答

1

如果這部作品在emulator上,而不是device因爲你沒有對InternetConnection做到這一點是最有可能您device或您嘗試訪問的Feed URL不能從訪問您的device也連接的Network

0

我已經有這個問題,host is unresolved意味着該網址無法訪問,或者您的連接過於流暢。嘗試使用另一個具有良好帶寬的Internet Connexion來測試您的程序:

另外,請檢查您的模擬器是否顯示3G的圖標。

+0

是的,你是對的,有時主機無法訪問。但我的觀點是:我如何檢測我的請求是否完成?並提醒應用程序的用戶關於此? –

+0

你已經捕捉到你的代碼可能拋出的異常,所以你可以通過顯示Toast或alertDialog來提醒用戶在Catch()上的用戶,同樣的事情,當你的代碼請求做得很好時,顯示一個Toast :) – Houcine