2011-09-22 3 views

Répondre

4

un autre extrait d'une applilcation que j'ai écrit récemment:

TelephonyManager telManager;  
telManager = (TelephonyManager) getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE); 
int cType = telManager.getNetworkType(); 
String cTypeString; 
switch (cType) { 
     case 1: cTypeString = "GPRS"; break; 
     case 2: cTypeString = "EDGE"; break; 
     case 3: cTypeString = "UMTS"; break; 
     case 8: cTypeString = "HSDPA"; break; 
     case 9: cTypeString = "HSUPA"; break; 
     case 10:cTypeString = "HSPA"; break; 
     default:cTypeString = "unknown"; break; 
} 
0

Cela vérifiera si vous avez une connexion Internet (3G):

private boolean isNetworkAvailable() { 
    ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo activeNetworkInfo = connectivityManager 
      .getActiveNetworkInfo(); 
    return activeNetworkInfo != null; 
} 
1
ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); 

    NetworkInfo mMobile = connManager 
      .getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 

    if (mMobile.isAvailable() == true) { 
     Intent otherActivity = new Intent(); 
     mapActivity.setClass(getBaseContext(), other.class); 
     startActivity(otherActivity); 
    } 

Ne pas oublier d'ajouter l'autorisation "ACCESS_NETWORK_STATE" dans le fichier AndroidManifext.xml!

2

vous devez d'abord vérifier si est le réseau wifi ou mobile

qu'un simple appel

(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE)).getNetworkType()); 

pas que vous pourriez être sur EDGE ou GPRS ou quelque chose que vous pouvez aussi le faire

if (getSsTelephony().getNetworkType() >= TelephonyManager.NETWORK_TYPE_UMTS) 
    return NETWORK_3G; 
3

Essayez ce genre de choses,

void checkConnectionStatus() 
     { 
     ConnectivityManager connMgr = (ConnectivityManager) 
     this.getSystemService(Context.CONNECTIVITY_SERVICE); 


     final android.net.NetworkInfo wifi = 
     connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI); 


     final android.net.NetworkInfo mobile = 
     connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 


     if(wifi.isAvailable()){ 
     Toast.makeText(this, "Wifi" , Toast.LENGTH_LONG).show(); 
     } 
     else if(mobile.isAvailable()){ 
     Toast.makeText(this, "Mobile 3G " , Toast.LENGTH_LONG).show(); 
     } 
     else 
     {Toast.makeText(this, "No Network " , Toast.LENGTH_LONG).show();} 
     } 
} 
Questions connexes