你能在android中解释requestRouteToHost()的功能吗?

在我的代码中我使用requestRouteToHost()方法:

这种路由是否意味着将WIFI改为3G,反之亦然?

我的代码无效……

public static boolean isHostAvailable(Context context, String urlString) throws UnknownHostException, MalformedURLException { 
     boolean ret = false; 
     int networkType = ConnectivityManager.TYPE_WIFI; 
     ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
     if(cm != null){ 
             NetworkInfo nf = cm.getActiveNetworkInfo(); 
             if(nf != null){ 
                     networkType = nf.getType(); 
             } 
             URL url = new URL(urlString); 
             InetAddress  iAddress = InetAddress.getByName(url.getHost()); 
             ret = cm.requestRouteToHost(networkType, ipToInt(iAddress.getHostAddress())); 
     } 
     return ret; 
}

public static int ipToInt(String addr) {
     String[] addrArray = addr.split("\\.");

     int num = 0;
     for (int i=0;i<addrArray.length;i++) {
         int power = 3-i;

         num += ((Integer.parseInt(addrArray[i])%256 * Math.pow(256,power)));
     }
     return num;
 }

谢谢

解决方法:

方法requestRouteToHost()不会将wifi更改为3G,反之亦然!

Official Documentation

public boolean requestRouteToHost (int networkType, int hostAddress) 

Ensure that a network route exists to deliver traffic to the specified host via the specified network interface. An attempt to add a route that already exists is ignored, but treated as successful.

>参数

networkType要路由指定主机的流量的网络类型

hostAddress所需路由的主机的IP地址
>退货

成功时为真,失败时为假

上一篇:WebSphere ILOG JRules 规则引擎运行模式简介


下一篇:使用PHP / Symfony在URL中获得#part