首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何检查Android的互联网访问?InetAddress永远不会超时?

如何检查Android的互联网访问?InetAddress永远不会超时?

提问于 2017-12-15 10:13:21
回答 2关注 0查看 473

我得到了一个AsyncTask并且在检查网络访问主机名称。但是,doInBackground()从来没有超时过?有什么看法吗?

代码语言:txt
复制
public class HostAvailabilityTask extends AsyncTask<String, Void, Boolean> {
代码语言:txt
复制
代码语言:txt
复制
    private Main main;
代码语言:txt
复制
代码语言:txt
复制
    public HostAvailabilityTask(Main main) {
代码语言:txt
复制
        this.main = main;
代码语言:txt
复制
    }
代码语言:txt
复制
代码语言:txt
复制
    protected Boolean doInBackground(String... params) {
代码语言:txt
复制
        Main.Log("doInBackground() isHostAvailable():"+params[0]);
代码语言:txt
复制
代码语言:txt
复制
        try {
代码语言:txt
复制
            return InetAddress.getByName(params[0]).isReachable(30); 
代码语言:txt
复制
        } catch (UnknownHostException e) {
代码语言:txt
复制
            e.printStackTrace();
代码语言:txt
复制
        } catch (IOException e) {
代码语言:txt
复制
            e.printStackTrace();
代码语言:txt
复制
        }
代码语言:txt
复制
        return false;       
代码语言:txt
复制
    }
代码语言:txt
复制
代码语言:txt
复制
    protected void onPostExecute(Boolean... result) {
代码语言:txt
复制
        Main.Log("onPostExecute()");
代码语言:txt
复制
代码语言:txt
复制
        if(result[0] == false) {
代码语言:txt
复制
            main.setContentView(R.layout.splash);
代码语言:txt
复制
            return;
代码语言:txt
复制
        }
代码语言:txt
复制
代码语言:txt
复制
        main.continueAfterHostCheck();
代码语言:txt
复制
    }   
代码语言:txt
复制
}

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档