2013-11-25 62 views
0

我有一個使用DefaultHttpClient將多媒體文件上載到服務器的應用程序。但我只想限制這種上傳功能只有Wifi。我嘗試過使用ConnectivityManager,但它會影響我的手機設置。將連接設置設置爲android應用程序

如何在我的代碼中編寫此設置,以便此設置僅適用於我的應用程序並且不會影響我的手機設置?提前致謝。

+0

調用上傳任務什麼的時候提供無線網絡連接 –

+0

你能否詳細'嘗試使用ConnectivityManager但它影響了我的電話settings'? – gunar

回答

4
public class NetworkConnection 
    { 
    public static boolean isConnected(Context context) 
    { 

     ConnectivityManager connectivityManager = (ConnectivityManager) 
     context.getSystemService(Context.CONNECTIVITY_SERVICE); 

     NetworkInfo networkInfo = null; 

     if (connectivityManager != null) { 

      networkInfo = 
       connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI); 

     } 

     boolean b = networkInfo.isConnected(); 

     boolean result=(b); 

     return (networkInfo == null) ? false : result; 
    } 
    } 

then you can call this class anywhere you want by : 

if(NetworkConnection.isConnected(YourActivity.this)) 
{ 
//Wi-fi enable 
}else{ 
//Wi-fi disable 
} 
+0

謝謝你的幫助 – user2720184

0

試試這個:

ConnectivityManager conManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); 
NetworkInfo nwInfo = conManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI); 

if (nwInfo.isConnected()) { 
    uploadFilesToServer(); //Your function 
} 

希望它能幫助。

0

使用WifiManager類,你可以檢查是否支持Wi-Fi:

WifiManager wifi = (WifiManager)getSystemService(Context.WIFI_SERVICE); 
if (wifi.isWifiEnabled()){ 
//wifi is enabled 
} 

如果有的話,進行上傳。我不知道你的意思tried using ConnectivityManager but it affects my phone settings

+0

哦,我的意思是當我使用ConnectivityManager。 setNetworkPreference(ConnectivityManager.TYPE_WIFI),它打開我的手機的WiFi設置。這不完全是我的意圖。 – user2720184

相關問題