urlConnection.connect()仅适用于AsyncTask - android

时间:2015-08-22 08:23:37

标签: android connect urlconnection

我正在使用

连接到网络服务
   urlConnection.connect();

这仅适用于AsyncTask。我无法在普通活动上执行上述语句(没有AsyncTask)

是设计行为,还是我遗漏了什么。

顺便说一下,这是我的第一个问题

2 个答案:

答案 0 :(得分:2)

欢迎使用stackoverflow。请在发布问题前使用谷歌搜索和stackoverflow搜索。这些人很大,其他人已经问过你的问题了。 stackoverflow rules

网络通信必须在android的seprate Thread中完成。 请在此处详细了解developer wiki

答案 1 :(得分:1)

你可能会得到:

var i = 30;
function startTimer() {
    var countdownTimer = setInterval(function () {
        console.log(i);
        i = i - 1;
        if (i < 0) {
            clearInterval(countdownTimer);
            return; //This will prevent -1 to be written to html
        }
        document.getElementById("time-remaining").innerHTML = "Time Remaining:" + i;
    }, 1000);
}
startTimer();

因为您正在尝试在主UI线程上执行网络操作,从而压倒它。而是使用NetworkOnMainThreadException

另外,请注意,如果服务器花了很多时间来响应,主线程也会无响应。