2015-07-08 39 views
6

Tôi đã tự hỏi liệu phương pháp bên dưới có kiểm tra xem tôi có được kết nối với mạng hay không và thực sự có thể kết nối với Internet không.Kiểm tra kết nối mạng và Internet - Android

Không chỉ kết nối với mạng không cho phép tôi truy cập internet?

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

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

Tôi nghĩ, nhưng tôi không chắc chắn 100%.

Cảm ơn

+0

'networkInfo.isConnected() 'kiểm tra xem kết nối mạng tồn tại và nếu chúng ta có thể thiết lập kết nối và truyền dữ liệu. Bạn cũng có thể sử dụng 'networkInfo.isConnectedOrConnecting()' để kiểm tra xem kết nối mạng có tồn tại hay đang trong quá trình được thiết lập hay không. Ngoài ra, hãy đảm bảo bạn thêm quyền vào AndroidManifest.xml của mình để truy cập trạng thái wifi và mạng, tương ứng: '' ' ' –

+0

Bản sao có thể có của [Cách kiểm tra truy cập internet trên Android? InetAddress không bao giờ hết thời gian] (https://stackoverflow.com/questions/1560788/how-to-check-internet-access-on-android-inetaddress-never-times-out) –

Trả lời

2

Có một cái nhìn vào one of my old answers. Nó có hai phương pháp khác nhau 1. để kiểm tra xem thiết bị có được kết nối với mạng không 2. để kiểm tra xem thiết bị có được kết nối với Internet hay không.

0

Đoạn code dưới đây sẽ kiểm tra kết nối internet sử dụng Kotlin trong studio android:

private fun amIConnected(): Boolean { 
    val connectivityManager = this.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager 
    val activeNetworkInfo = connectivityManager.activeNetworkInfo 
    return activeNetworkInfo != null && activeNetworkInfo.isConnected 
} 
Các vấn đề liên quan