在測試應用程序時,我不斷收到偶爾出現在一款設備上的錯誤:GT-I9100(歐洲)三星Galaxy S II。這些錯誤不會發生在任何其他設備上,甚至不會發生在SPH-D710(Sprint)三星Galaxy S II上。Samsung Galaxy S II上的零星UnknownHostException
該應用使用的URL不會更改。它們與我可以輸入到Web瀏覽器中的相同,或者應用程序的iOS和桌面版本使用的相同。但有時他們會拋出UnknownHostException,有時他們不會。
這裏是我使用的代碼的重消毒版本:
AndroidHttpClient client = AndroidHttpClient.newInstance(activity.getString(R.string.user_agent));
HttpPost httpPost = new HttpPost("http://" + subdomainId + ".website.com/doSomething.aspx");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("parameter1", value1));
nameValuePairs.add(new BasicNameValuePair("parameter2", value2));
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpContext httpContext = new BasicHttpContext();
HttpResponse response = client.execute(httpPost, httpContext);
... ...
是否有可能會造成這個三星Galaxy S II的任何怪癖?它運行的是Android 2.3.6。
我看到的另一個例子在ACRA崩潰報告上的DROID RAZR運行不同的應用程序很好的做法。該代碼使用了androidHttpClient.execute(httpPost)。硬編碼的URL是完全有效的,但拋出UnknownHostException –
當設備沒有互聯網連接時不會發生UnknownHostException? – you786
不穩定(甚至不存在)的Internet連接可能導致UnknownHostException。 – Floern