① 安卓机怎么查看自己的wifi密码
手机查看wifi密码需要手机具备分享网络的功能,打开手机设置,选择无线网络后,点击已经连接上的wifi右边的叹号,选择分享网络并保存二维码。打开手机微信点击右上角+号,选择扫一扫,选择右上角三点标志的按钮后点击从相册选择二维码,选择刚刚保存的二维码后系统会自动扫描识别,英文里引号内的就是wifi密码。这里以安卓手机和微信(7.0.0版本)为例演示一下。
开启分步阅读模式
手机WIFI查看密码
01
进入手机设置,选择“无线网络”。
02
点击想要查看密码的WIFI信号。
03
选择“分享网络”。
04
保存弹框出现的二维码图片。
05
保存完成后,切换到微信界面,选择“+”。
06
选择“扫一扫”。
07
点击右上角“三点符号”。
08
选择“从相册选取二维码”。
09
点击保存的二维码图片,等待系统扫描后,即会出现密码,其中“”中的字符即为WIFI密码。
通过以上的掩饰,我相信你应该知道怎样在自己的手机上查找自己的WiFi密码了,是不是非常简单呢?赶快去试着找找看吧。
② 有关android内核的wifi驱动api
通过程序来实现wifi的自动连接。
这两天对android的wifi功能研究了一下。下面共享出自己封装的WifiConnect类。(这里参考了ZXing开源项目中wifi模块)
首先,要了解android关于wifi的API.
如果喜欢看English API,这是android关于wifi的API地址:
http://developer.android.com/reference/android/net/wifi/package-summary.html(配置Wifi,还需要设定权限,android中关于wifi的API文档中说明了要添加什么权限)
如果一看英语就头疼,这里有关于wifi的api的中文解释
http://note.sdo.com/u/1500295617/n/prb71~jGAHfpnM0l000bgN
切入正题,这里贴出一个封装了的类(WifiConnect),在实例化WifiConnect对象时,需要传入一个WifiManager对象。WifiConnect类向外部提供一个Connect方法,参数是无线的SSID,password,还有加密类型。
[
java] view plainprint?
- <spanstyle="font-size:18px;">packagecom.example.aptest;
- importjava.util.List;
- importandroid.net.wifi.WifiConfiguration;
- importandroid.net.wifi.WifiManager;
- publicclassWifiConnect{
- WifiManagerwifiManager;
- //定义几种加密方式,一种是WEP,一种是WPA,还有没有密码的情况
- publicenumWifiCipherType
- {
- WIFICIPHER_WEP,WIFICIPHER_WPA,WIFICIPHER_NOPASS,WIFICIPHER_INVALID
- }
- //构造函数
- publicWifiConnect(WifiManagerwifiManager)
- {
- this.wifiManager=wifiManager;
- }
- //打开wifi功能
- privatebooleanopenWifi()
- {
- booleanbRet=true;
- if(!wifiManager.isWifiEnabled())
- {
- bRet=wifiManager.setWifiEnabled(true);
- }
- returnbRet;
- }
- //提供一个外部接口,传入要连接的无线网
- publicbooleanconnect(StringSSID,StringPassword,WifiCipherTypeType)
- {
- if(!this.openWifi())
- {
- returnfalse;
- }
- //开启wifi功能需要一段时间(我在手机上测试一般需要1-3秒左右),所以要等到wifi
- //状态变成WIFI_STATE_ENABLED的时候才能执行下面的语句
- //WifiManager.WIFI_STATE_ENABLING2
- //WifiManager.WIFI_STATE_ENABLED3
- System.out.println("wifiManager.getWifiState()"+wifiManager.getWifiState());
- while(wifiManager.getWifiState()==WifiManager.WIFI_STATE_ENABLING)
- {
- System.out.println("wifiManager.getWifiState"+wifiManager.getWifiState());
- try{
- //为了避免程序一直while循环,让它睡个100毫秒在检测……
- Thread.currentThread();
- Thread.sleep(100);
- }
- catch(InterruptedExceptionie){
- }
- }
- WifiConfigurationwifiConfig=this.createWifiInfo(SSID,Password,Type);
- //
- if(wifiConfig==null)
- {
- returnfalse;
- }
- WifiConfigurationtempConfig=this.isExsits(SSID);
- if(tempConfig!=null)
- {
- wifiManager.removeNetwork(tempConfig.networkId);
- }
- intnetID=wifiManager.addNetwork(wifiConfig);
- booleanbRet=wifiManager.enableNetwork(netID,false);
- returnbRet;
- }
- //查看以前是否也配置过这个网络
- (StringSSID)
- {
- List<WifiConfiguration>existingConfigs=wifiManager.getConfiguredNetworks();
- for(:existingConfigs)
- {
- if(existingConfig.SSID.equals("""+SSID+"""))
- {
- returnexistingConfig;
- }
- }
- returnnull;
- }
- (StringSSID,StringPassword,WifiCipherTypeType)
- {
- WifiConfigurationconfig=newWifiConfiguration();
- config.allowedAuthAlgorithms.clear();
- config.allowedGroupCiphers.clear();
- config.allowedKeyManagement.clear();
- config.allowedPairwiseCiphers.clear();
- config.allowedProtocols.clear();
- config.SSID="""+SSID+""";
- if(Type==WifiCipherType.WIFICIPHER_NOPASS)
- {
- config.wepKeys[0]="""+""";;
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
- config.wepTxKeyIndex=0;
- //或者下面两段代码也可以
- //config.hiddenSSID=true;
- //config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
- }
- elseif(Type==WifiCipherType.WIFICIPHER_WEP)
- {
- config.wepKeys[0]="""+Password+""";
- config.hiddenSSID=true;
- config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED);
- config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
- config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
- config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
- config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104);
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
- config.wepTxKeyIndex=0;
- }
- elseif(Type==WifiCipherType.WIFICIPHER_WPA)
- {
- config.preSharedKey="""+Password+""";
- config.hiddenSSID=true;
- config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
- config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
- config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
- //config.allowedProtocols.set(WifiConfiguration.Protocol.WPA);//这句好像不行
- config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
- config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
- config.status=WifiConfiguration.Status.ENABLED;
- }
- else
- {
- returnnull;
- }
- returnconfig;
- }
- }
- </span>