2014-09-23 2 views
0

я хочу узнать состояние сети при запуске приложения, я использую этот кодПолучить статус сети, когда приложение начинает

public class ConnectionChangeReceiver extends BroadcastReceiver 
{ 
    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
    ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo(); 
    NetworkInfo mobNetInfo = connectivityManager.getNetworkInfo( ConnectivityManager.TYPE_MOBILE); 
    Log.w("Network Status:",""+activeNetInfo); 
    if (activeNetInfo != null) 
    { 

     Toast.makeText(context, "Active Network Type : " + activeNetInfo.getTypeName(), Toast.LENGTH_SHORT).show(); 
    } 
    if(mobNetInfo != null) 
    { 
     Toast.makeText(context, "Mobile Network Type : " + mobNetInfo.getTypeName(), Toast.LENGTH_SHORT).show(); 
    } 
    } 
} 

Но это только тогда, когда вызов changed.I состояния сети необходимо знать состояние сети при запуске приложения .Как я могу это сделать ?

+0

Вы имеете в виду, что либо сеть подключена, либо не только? или что-то другое – Android

ответ

0

Небольшой пример кода:

public boolean isOnline() 
{ 
    ConnectivityManager cm = 
     (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo netInfo = cm.getActiveNetworkInfo(); 
    if (netInfo != null && netInfo.isConnectedOrConnecting()) { 
     return true; 
    } 
    return false; 
} 

И не забудьте установить разрешение.

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