我刚接触Android,并尝试编写SyncAdapter
- 可以限制SyncAdapter
仅在使用WiFi网络(而不是3G等)时执行同步吗?
我刚接触Android,并尝试编写SyncAdapter
- 可以限制SyncAdapter
仅在使用WiFi网络(而不是3G等)时执行同步吗?
您可以进行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"/>
上面的回答很好,但我想补充一个 HttpHead-Request(HTTPGet也可以,但你会收到比需要更多的数据),它调用例如google.com,这样你就可以确信自己真正连接到了互联网。
上面发布的解决方案只检查您是否具有网络访问权限,但不能保证您具有互联网访问权限。