2013-11-25 37 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

相关问题