2011-09-22 15 views

risposta

4

un altro frammento di applilcation che ho scritto di recente:

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

Questo controllerà se si dispone di connessione 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); 
    } 

Non dimenticare di aggiungere l'autorizzazione "ACCESS_NETWORK_STATE" nel file AndroidManifext.xml!

2

in primo luogo è necessario verificare se la connessione wifi o rete mobile

che basta chiamare

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

non è che si potrebbe essere sulla EDGE o GPRS o qualcosa in modo da poter anche fare questo

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

provare questa roba,

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();} 
     } 
}