请问...        public void run() {
            Message mssage = Message.obtain();
           InetAddress host = null;
            final String SERVERIP="www.baidu.com";
            try {
                host = InetAddress.getByName(SERVERIP);
                boolean isReachable = host.isReachable(3000);
                mssage.what = 6;
                String desc =  "连接状态..."+isReachable;
                mssage.obj = desc;
                handler.sendMessage(mssage);
            } catch (IOException e) {
                e.printStackTrace();
            }
这是做的监听网络的子线程
并且,通过handler进行处理,将数据传到ui线程
并且,开了权限
代码应该不存在问题,但是为什么我总是访问不到网络??
但是用url可以访问到网络
如果有人能够帮我解决这个问题,我可以支付十块钱=。=萌新表示很穷

解决方案 »

  1.   

    你用的这个方法并不能得到正确的答案,android中使用以下的方法        public void run() {
                    Message message = Message.obtain();
                    final String SERVER_IP="www.baidu.com";
                    try {
                        Process p1 = java.lang.Runtime.getRuntime().exec("ping -c 1 -w 3000 "+SERVER_IP);
                        int returnVal = p1.waitFor();
                        boolean reachable = (returnVal==0);
                        message.what = 6;
                        String desc =  "连接状态..."+reachable;
                        message.obj = desc;
                        handler.sendMessage(message);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }