1

我有以下一段代码,基本上是从示例中复制粘贴的,因为我是 Java 和 Android 新手(不是编程):

      URL vurl = new URL(voteurl); //vuteurl is a string containing a proper URL
      HttpURLConnection hc;
      hc=null;
      hc = (HttpURLConnection)vurl.openConnection();
      hc.setRequestMethod("GET");
      hc.setDoOutput(true);
      hc.setReadTimeout(10000);
      hc.connect();

在“hc.connect();”这一行 应用程序崩溃,Android 通知我它已停止。将 android.permission.INTERNET 添加到应用程序使用的权限并没有帮助。

4

2 回答 2

0
URL vurl = null;
    try {
        vurl = new URL(voteurl);
    } catch (MalformedURLException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    } //vuteurl is a string containing a proper URL
    HttpURLConnection hc;
    hc=null;
    try {
        hc = (HttpURLConnection)vurl.openConnection();
    } catch (IOException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
    try {
        hc.setRequestMethod("GET");
    } catch (ProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    hc.setDoOutput(true);
    hc.setReadTimeout(10000);
    try {
        hc.connect();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
于 2012-07-14T09:53:42.053 回答
0

好的,原来 Android 不喜欢主线程中的网络操作。在单独的线程中执行请求就可以了。谢谢大家帮助!

于 2012-07-14T09:31:58.737 回答