限制Android同步到WIFi

时间:2012-10-30 11:07:07

标签: android android-networking android-syncadapter

我是Android新手,我正在尝试编写SyncAdapter - 是否可以将SyncAdapter限制为仅在网络为WiFi(而非3G等)时执行同步?< / p>

2 个答案:

答案 0 :(得分:5)

你可以检查wifi作为

    ConnectivityManager cm = (ConnectivityManager) YourActivity.this.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo info = cm.getActiveNetworkInfo();

    if(info.getType()==ConnectivityManager.TYPE_WIFI)
    {
        System.out.println("WiFi Connected");
    }
    else
    {
            System.out.println("WiFi not connected");
    }

并在清单中添加权限

 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

答案 1 :(得分:2)

上面的答案很好,但是我会添加一个HttpHead-Request(HTTPGet也可以,但是你收到的数据超过了需要的数据),例如google.com所以你可以确定你真正连接到互联网。 以上发布的解决方案只检查您是否具有网络访问权限,但不保证您具有inernet访问权限。