0

我的 Android http url 连接有问题。我有这个方法:

private String getHtml(String urlString) throws Exception {

StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);

URL url = new URL(urlString);
URLConnection uc = url.openConnection();
uc.setRequestProperty("Authorization", "Basic " + password);
InputStream content = uc.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = in.readLine()) != null) {
    pw.println(line);
} 
return sw.toString();
}

当我从普通的 java 应用程序中使用它时,它工作得很好。但是当我从 Android 应用程序中运行它时,它不起作用。

我观察到在 Android 中运行时,url 连接是 org.apache...HttpURLConnection。当它使用它时,它不会进入while循环。

在普通的 java 应用程序中,它使用 sun.net...HttpURLConnection (有效)。

有人对我如何让它在 Android 上运行有任何建议吗?

4

1 回答 1

-1

你可以试试这个解决方案:

        try 
        {
            HttpClient client = new DefaultHttpClient();
            HttpGet request = new HttpGet(url);
            HttpResponse response = client.execute(request);

            InputStream in = response.getEntity().getContent();
        } 
        catch (Exception e) 
        {
            // Code
        }

目前不记得正确的异常,但我想你可以找到它。

于 2011-11-26T02:04:13.130 回答