Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何编程android以查找特定网络?(简单教程后的问题)_Java_Android_Eclipse_Wifimanager - Fatal编程技术网

Java 如何编程android以查找特定网络?(简单教程后的问题)

Java 如何编程android以查找特定网络?(简单教程后的问题),java,android,eclipse,wifimanager,Java,Android,Eclipse,Wifimanager,我尝试使用以下示例: 但我无法执行该命令,因为该行存在以下问题: WifiManager=(WifiManager)context.getSystemService(context.WIFI\u SERVICE) 在那之后,我还遇到了其他一些错误,但[我认为]我已经完全按照教程/示例进行了操作 import java.util.List; import android.app.Activity; import android.net.wifi.WifiConfiguration; im

我尝试使用以下示例:

但我无法执行该命令,因为该行存在以下问题:

WifiManager=(WifiManager)context.getSystemService(context.WIFI\u SERVICE)

在那之后,我还遇到了其他一些错误,但[我认为]我已经完全按照教程/示例进行了操作

import java.util.List;
import android.app.Activity;    
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.util.Log;
import android.content.Context; 

public class Connect extends Activity  {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.connect);
        String networkSSID = "ANDRE-PC_NETWORK";
        String networkPass = "superman";

        WifiConfiguration conf = new WifiConfiguration();
        conf.SSID = "\"" + networkSSID + "\"";   //ssid must be in quotes


        conf.wepKeys[0] = "\"" + networkPass + "\""; 
        conf.wepTxKeyIndex = 0;
        conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
        conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40); 

        conf.preSharedKey = "\""+ networkPass +"\"";

        conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);

        WifiManager wifiManager = (WifiManager)getSystemService(WIFI_SERVICE); 
        wifiManager.addNetwork(conf);

        List<WifiConfiguration> list = wifiManager.getConfiguredNetworks();
        for( WifiConfiguration i : list ) {
            if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\"")) {
                 WifiManager.disconnect();
                 WifiManager.enableNetwork(i.networkId, true);
                 WifiManager.reconnect();                

                 break;
            }           
         }

    }}

您似乎混淆了一些变量名:

WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE); 
wifiManager.add(conf);

List<WifiConfiguration> list = wifiManager.getConfiguredNetworks();
for( WifiConfiguration i : list ) {
    if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\"")) {
         wm.disconnect();
         wm.enableNetwork(i.networkId, true);
         wm.reconnect();                
         break;
    }           
}
WifiManager WifiManager=(WifiManager)context.getSystemService(context.WIFI_SERVICE);
wifiManager.add(conf);
List List=wifiManager.getConfiguredNetworks();
用于(无线配置i:列表){
如果(i.SSID!=null&&i.SSID.equals(“\”+networkSSID+“\”)){
wm.disconnect();
wm.enableNetwork(即networkId,true);
wm.reconnect();
打破
}           
}
wifiManager
应该是
wm
,反之亦然。另外,
context
应该是
this
,或者只作为类的方法
getSystemService()

我不确定
add()
的问题

编辑

嗯,
add()
对于
WifiManager
不存在,但是
addNetwork()
存在,所以我想您需要该方法而不是
add()

Edit2

你不知道你在做什么,对吗?你甚至不理解类名和变量名之间的区别


WifiManager WifiManager
[根据您的回复更新了我的源代码]根据您的回复更新了我的源代码(和问题日志)-我仍在挠头
WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE); 
wifiManager.add(conf);

List<WifiConfiguration> list = wifiManager.getConfiguredNetworks();
for( WifiConfiguration i : list ) {
    if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\"")) {
         wm.disconnect();
         wm.enableNetwork(i.networkId, true);
         wm.reconnect();                
         break;
    }           
}