wi-fi难道不是自动连接的吗?每次回家打开wi-fi后都是自动连接的啊。。

解决方案 »

  1.   

    那你是之前做个连线的动作才会自动连接的。若没有的话,这个实现有点难度。
    因为,你连接过后会再WiFiConfig中保存了记录。
      

  2.   

    我的意思就是驱动是如何去自动连接的啊 每次连接一个AP后 会在WifiConfiguration中保存。
    但是驱动是如何遍历每一个AP的priority并进行连接的啊???
      

  3.   

    每次连接过某一个A片后会再WiFiConfig中保存了记录,但是驱动是如何遍历每一个保存的AP的priority属性的啊???求解
      

  4.   

    每次连接过某一个A片后会再WiFiConfig中保存了记录,但是驱动是如何遍历每一个保存的AP的priority属性的啊???求解
      

  5.   

    会跳转的,如果你打开了2G、3G上网, 你可以监听网络状态的广播,如已连接之类的广播,应该可以判断网络类型是不是wifi
      

  6.   

    frameworks/base/wifi/java/android/net/wifi/WifiStateTracker.java
      

  7.   

    frameworks/base/wifi/java/android/net/wifi/WifiStateTracker.java
      

  8.   


    WifiStateTracker.java只是调用底层方法,我想知道驱动是如何去自动连接某一个WifiAP的
      

  9.   

    wpa_supplicant进程中的wpa_supplicant.conf里面有热点记录才会自动扫描。
    否则不会自动链接,不过你可以自己编程实现,connect networkID!
    连接过的存储到wpa——supplicant.conf中,下次就能自动扫描链接
      

  10.   

    不太懂!不过我用WIFI都是手动连接的!
      

  11.   

    在onCreate获取wifi服务
    wifi_on=(WifiManager)super.getSystemService(Context.WIFI_SERVICE);
    在需要的地方 wifi_on.setWifiEnabled(true);//自动打开WIFI
      

  12.   

    Please refer to : Wifi stateMachine : driverStartedState, wifiNative.reconnect()
      

  13.   

    哈哈,我以为我很菜,发现有比我菜的多的是
    wifi自动链接的实现实在wpa_supplicant里的event.c里面实现的
    每次扫描结果返回的时候,就会遍历一遍config,然后选择优先级最高的那个,大概就是这个意思
      

  14.   

    应该是事件触发的,系统检测到wifi打开或连接,以及发现新的wifi热点事件时触发的
      

  15.   

    WifiManager.saveConfiguration();
    使用该方法就可以保存当前连接的wifi配置,会自动写入到wpa——supplicant.conf文件中,以后打开wifi就会自动连接
    我这样用一直没问题
      

  16.   

    应用层肯定是没有的,应该在runtime和驱动层。
      

  17.   

    驱动层的可能性不大吧,个人觉得framework层的可能性较大