Android: code kiểm tra xem thiết bị Android có kết nối mạng hay không

Khi viết một ứng dụng cần kết nối internet, bạn nên tính tới trường hợp máy không có kết nối internet để thông báo với người dùng, qua đó tránh được lỗi, cũng như thông báo với người dùng rằng họ cần bật wifi hoặc 3G/4G để có thể sử dụng được ứng dụng.

Dưới đây là đoạn code để kiểm tra xem thiết bị Android có kết nối internet hay không:

private Boolean isOnline() {
	ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
	NetworkInfo ni = cm.getActiveNetworkInfo();
	if(ni != null && ni.isConnected()) {
	     return true;
        }
	return false;
}

Đừng quên đăng ký các permission này trong file AndroidManifest.xml:

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