我无法在android studio中连接wifi如何解决此问题?

时间:2020-10-09 10:42:43

标签: java android wifi android-wifi

这是我连接wifi的代码 ssid和pw已经初始化 和权限已设置,请帮助我 我的android gradle插件版本是4.0.2 gradle版本6.1.1 编译SDK版本28

enter code here
private void connect_ap(String ssid) {
    String network = "open or wpa or wep";
    WifiManager wifiManager;
    System.out.print("와이파이 연결:");
    System.out.println(ssid);
    System.out.println(key);
    WifiConfiguration wifiConfig=new WifiConfiguration();
    wifiConfig.SSID = String.format("\"%s\"", ssid);
    wifiConfig.preSharedKey = String.format("\"%s\"", key);
    if (network.contains("open")) {
        wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
        wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
        wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
        wifiConfig.allowedAuthAlgorithms.clear();
        wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
        wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
    } else if (network.contains("wpa")) {
        wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
        wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
        wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
        wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
        wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
        wifiConfig.preSharedKey = "\"".concat(key).concat("\"");
    } else if (network.contains("wep")) {
        wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
        wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
        wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
        wifiConfig.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
        wifiConfig.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED);
        wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
        wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
        wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104);
        wifiConfig.wepKeys[0] = "\"".concat(key).concat("\"");
        wifiConfig.wepTxKeyIndex = 0;
    }


    System.out.print("wificonfig.SSID:");
    System.out.println(wifiConfig.SSID);
    System.out.print("wificonfig.preSharedKey:");
    System.out.println(wifiConfig.preSharedKey);
    wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
    System.out.print("wificonfig:");
    System.out.println(wifiConfig);
    int netId = wifiManager.addNetwork(wifiConfig);
    System.out.print("netId:");
    System.out.println(netId);

    wifiManager.disconnect();
    wifiManager.enableNetwork(netId, true);
    wifiManager.reconnect();

    }

这是配置

enter code here
I/System.out: wificonfig.SSID:"ROY 5G-2"
I/System.out: wificonfig.preSharedKey:"roy12345"
I/System.out: wificonfig:* ID: -1 SSID: "ROY 5G-2" PROVIDER-NAME: null BSSID: null FQDN: null PRIO: 0 
HIDDEN: false PMF: false
 NetworkSelectionStatus NETWORK_SELECTION_ENABLED
 hasEverConnected: false
 trusted
 macRandomizationSetting: 1
 mRandomizedMacAddress: 02:00:00:00:00:00
 KeyMgmt: NONE Protocols: WPA RSN
 AuthAlgorithms:
 PairwiseCiphers: TKIP CCMP
 GroupCiphers: WEP40 WEP104 TKIP CCMP
 GroupMgmtCiphers:
 SuiteBCiphers:
 PSK/SAE: *
Enterprise config:
eap NULL
phase2 "auth=NULL"
IP config:
IP assignment: UNASSIGNED
Proxy settings: UNASSIGNED
 cuid=-1 luid=-1 lcuid=0 userApproved=USER_UNSPECIFIED noInternetAccessExpected=false 
recentFailure: Association Rejection code: 0
samsungSpecificFlags:
semAutoWifiScore: 0
isVendorAp : false
recoverableRSSI: -200
I/System.out: inRecoverArea: false
disabledTime: 0
notInRangeTime: 0
validatedInternetAccess: false
skipInternetCheck: -1
notAskAgainCheck: false
nextTargetRssi: 0
isCaptivePortal: false
isAuthenticated: false
loginUrl: null
autoReconnect: 1
isRecommended: false
isHomeProviderNetwork: false
 WapiCertIndex: 0
 WapiPskType: 0
isWeChatAp : false
 Guest MHS password: *
semMhsUserName : 
entryRssi24GHz : -78
entryRssi5GHz : -75
I/System.out: netId:7

如何解决?????????????????????????????????????????????????? ???????????????????????????????????????????????????

0 个答案:

没有答案