android - software - एंड्रॉइड: वाईफाई या इंटरनेट कनेक्शन प्रोग्रामेटिक रूप से सक्षम/अक्षम कैसे करें




android system download (4)

अपने मैनिफेस्ट में यह अनुमति जोड़ें और वाईफाई स्थिति बदलने के लिए उपरोक्त कोड का उपयोग करें:

 <!--permission ge enable and disable WIFI in android-->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

कनेक्टिविटी मैनेजर क्लास का उपयोग करके हम वाईफ़ाई या इंटरनेट नेटवर्क तक पहुंच प्राप्त कर सकते हैं:

ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

// ARE WE CONNECTED TO THE NET
if ( connec.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED ||
  connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED ) {
  // ...
}

जहां 0 और 1 क्रमशः मोबाइल और वाईफाई कनेक्शन को संदर्भित करता है

अगर मेरा एंड्रॉइड डिवाइस दोनों से जुड़ा हुआ है, तो क्या हम किसी भी नेटवर्क के बीच स्विच कर सकते हैं या क्या हम किसी भी नेटवर्क को अक्षम कर सकते हैं? एक समारोह का उपयोग करने की तरह:

connec.getNetworkInfo(0).setState(NetworkInfo.State.DISCONNECTED);

एक पूरा समाधान:

try {
    WifiManager wifi = (WifiManager) 
        context.getSystemService(Context.WIFI_SERVICE);

    WifiConfiguration wc = new WifiConfiguration();
    wc.SSID = "\"SSIDName\"";
    wc.preSharedKey  = "\"password\"";
    wc.hiddenSSID = true;
    wc.status = WifiConfiguration.Status.ENABLED; 

    wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
    wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
    wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);

    wc.allowedPairwiseCiphers
        .set(WifiConfiguration.PairwiseCipher.TKIP);
    wc.allowedPairwiseCiphers
        .set(WifiConfiguration.PairwiseCipher.CCMP);
    wc.allowedProtocols.set(WifiConfiguration.Protocol.RSN);

    boolean b=wifi.isWifiEnabled();
    if (b) {
        wifi.setWifiEnabled(false);
        Toast.makeText(context, "yes", Toast.LENGTH_SHORT).show();
    } else {
        wifi.setWifiEnabled(true);
        Toast.makeText(context, "no", Toast.LENGTH_SHORT).show();
    }
    //Log.d("WifiPreference", "enableNetwork returned " + b );

} catch (Exception e) {
    e.printStackTrace();
}

संदर्भ: http://amitkumar-android.blogspot.com/p/installation-steps.html


मैं सीधे संदर्भ वस्तु तक नहीं पहुंच सका।
मेरा समाधान निम्नानुसार है:

Context appContext = Android.App.Application.Context;
var wifiManager = (WifiManager)appContext.GetSystemService(WifiService);
wifiManager.SetWifiEnabled(state);

इसके अलावा मुझे कुछ लेखों को बदलना पड़ा जैसे कि। WIFI_SERVICE बनाम वाईफाई सेवा।


वाईफाई के लिए सिस्टम (एंड्रॉइड डिवाइस) सेवाएं प्राप्त करने के लिए अक्षम वाईफाई WifiManager क्लास का उपयोग करने के लिए:

WifiManager wifi =(WifiManager)getSystemService(Context.WIFI_SERVICE); 

अब WifiManager कक्षा का ऑब्जेक्ट wifi वाईफ़ाई स्थिति प्राप्त करने के लिए उपयोग किया जाता है:

if(wifi.isWifiEnabled())
    //Perform Operation
else
    //Other Operation

और सबसे महत्वपूर्ण बात यह है कि अपने एंड्रॉइड मैनिफेस्ट फ़ाइल में निम्नलिखित अनुमति देना न भूलें:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

एंड्रॉइड पर वाईफाई सक्षम / अक्षम करने के लिए प्रोजेक्ट की विस्तृत जानकारी और पूर्ण नमूना कोड प्राप्त करने के लिए मेरी वेबसाइट लिंक पर जाएं।





android