2

ネットワーク接続のテストは、次の方法で実行できます。

 public boolean isNetworkAvailable() 
{
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = cm.getActiveNetworkInfo();

    if (networkInfo != null && networkInfo.isConnected())
    {
        return true;
    }
    return false;
}

しかし、サーバー接続を確認する方法がわかりません。この方法に従っていました

public boolean isConnectedToServer(String url, long timeout) {
try{
    URL myUrl = new URL(url);
    URLConnection connection = myUrl.openConnection();
    connection.setConnectTimetout(timeout);
    connection.connect();
    return true;
} catch (Exception e) {
    // Handle your exceptions
    return false;
}

}

それは動作しません....任意のアイデアみんな!!

4

2 に答える 2

2

次を使用して、サーバー接続が利用可能かどうかを確認できますisReachable()

netAddress address = InetAddress.getByName(HOST_NAME);
boolean  reachable = address.isReachable(timeout);

そしてランタイムを使用して:

Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec("ping www.google.com");
于 2012-03-31T11:16:44.367 に答える
0
public boolean isConnectedToServer(String url, int timeout) {
 try{
    URL myUrl = new URL(url);
    URLConnection connection = myUrl.openConnection();
    connection.setConnectTimeout(timeout);
    connection.connect();
    return true;
} catch (Exception e) {
    // Handle your exceptions
    return false;
}

}

また、マニフェストに意図の許可を追加します

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
于 2015-05-27T09:29:59.277 に答える