public InputStream getInputStreamFromUrl(String strUrl) throws Exception { URL url = new URL(strUrl);
System.out.println("getInputStreamFromUrl " + url);
//打印出来10-16 08:51:21.920: INFO/System.out(1391): getInputStreamFromUrl http://10.0.0.4:8080/mp3/a1.mp3
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream inputStream = conn.getInputStream();//这句报错
System.out.println("getInputStreamFromUrl " + inputStream);
return inputStream;
}
访问Internet权限都已经给了。哪位高人帮我看看,指导一下,不胜感激!报错信息如下:
10-16 08:51:21.981: WARN/System.err(1391):  
   at com.download.HttpDownloader.getInputStreamFromUrl(HttpDownloader.java:83)

解决方案 »

  1.   

    是不是需要在
    nputStream inputStream = conn.getInputStream();
    之前调用
    conn.connect()啊?
      

  2.   

    public InputStream getDataAsInputStream(List<NameValuePair> params) {
    InputStream result = null;
    try {
    httpRequest = new HttpPost(url);
    httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
    httpResponse = httpClient.execute(httpRequest); if (200 == httpResponse.getStatusLine().getStatusCode()) {
    result = httpResponse.getEntity().getContent();
    }
    } catch (IOException e) {
    Log.e("nimeimei", e.getMessage(), e);
    return result;
    }
    return result;
    }
    public String intermessage(String str1, String str2) {
    String url = "http://10.1.49.137:8080/Good/TestServlet";
    HttpConnect httpConnect = new HttpConnect(url, context);
    List<NameValuePair> params = new ArrayList<NameValuePair>();
    params.add(new BasicNameValuePair("meetid", str1));
    params.add(new BasicNameValuePair("name", str2));
    params.add(new BasicNameValuePair("username", LoginActivity.username));
    String result = httpConnect.getDataAsString(params);
    return result;
    }
      

  3.   

    注意:1.  android文件的下载,一般是由service的线程来完成的,为什么这样做,原因是下载一般耗时比较长,我们不可能让用户等待文件下载完再做其它操作,所以我们一般情况下是启动service进行下载,这所以使用线程是为了保证多个下载任务之间不会相互冲突,当然下载完后,还需要发送通知消息,关于这些有空再写。2. 我们所创建的Service需要在配置清单文件AndroidManifest.xml进行注册。 <service android:name=".service.MP3DownloadService" />
    3. 我们读写SD Card需要对一定的permission(权限),这个也需要在AndroidManifest.xml进行注册。 <uses-permission android:name="android.permission.WIRTE_EXTERNAL_STORAGE"/>