Dan*_*Lew 54
首先,您需要获得许可才能知道设备是否已连接到网络.这需要在您的清单中,在<manifest>元素中:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Run Code Online (Sandbox Code Playgroud)
接下来,您需要获得对ConnectivityManager的引用:
ConnectivityManager cm = (ConnectivityManager) Context.getSystemService(Context.CONNECTIVITY_SERVICE);
Run Code Online (Sandbox Code Playgroud)
从那里你需要获得一个NetworkInfo对象.对于大多数人来说,这将意味着使用ConnectivityManager.getActiveNetworkInfo():
NetworkInfo ni = cm.getActiveNetworkInfo();
if (ni == null) {
// There are no active networks.
return false;
}
Run Code Online (Sandbox Code Playgroud)
从那里,您只需要使用NetworkInfo的一种方法来确定设备是否连接到互联网:
boolean isConnected = ni.isConnected();
Run Code Online (Sandbox Code Playgroud)
首先,您需要获得许可才能知道设备是否已连接到网络.这需要在您的清单中,在元素中:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
然后
ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
if (connec != null && (
(connec.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) ||
(connec.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED))) {
//You are connected, do something online.
} else if (connec != null && (
(connec.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.DISCONNECTED) ||
(connec.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.DISCONNECTED ))) {
//Not connected.
Toast.makeText(getApplicationContext(), "You must be connected to the internet", Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23849 次 |
| 最近记录: |