androidwifi原理图
‘壹’ Android WiFi 是什么东西啊、智能机吗
wifi只是一个功能,就是无线网络的意思,android就是安卓,都是智能机,安卓是一个系统
‘贰’ android系统上如何建立WIFI热点
参照如下路径:
开启流量,即移动网络。
设置--更多无线连接--网络共享--便携式wlan热点--选择启用,设置wlan热点,设置帐号密码。
3.在另一个手机,打开wlan,搜索设置好的帐号,输入密码即可登陆。
‘叁’ wifi模块android wifi mid wifi 安卓 wifi有什么区别
Android中文翻译是安卓,是一款基于Linux内核研发的移动设备智能操作系统。
wifi是基于WLAN(无线局域网)的无线网络传输技术。wifi模块就是通过wifi技术来无线收发数据的一个硬件,有内置的,也有外置的。内置的是一个芯片,焊接在主板上的,信号比较弱。外置的wifi模块就是无线网卡,信号比内置的好,但需要占用USB接口,功耗比内置的大。
MID是移动网络设备。屏幕尺寸≤6英寸,搭载智能操作系统、内置wifi 功能的设备都被称为MID,7英寸以上的称为平板电脑。和MID差不多,自带物理键盘的设备称为UMPC。‘肆’ wifi,安卓手机可以上网,iphone不能!
出现此问题,是因为iPhone的网络设置出问题了,只要还原网络设置即可。
具体的操作步骤如下:
1、首先,打开手机桌面,找到红色框,选择“设置”,然后单击进入下一步,如下图所示。
‘伍’ 有关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>
‘陆’ 谁能告诉我Android手机远程控制电脑的原理
远程控制win7主机的方法有多种,原理基本相同,第三方软件可以用“向日葵”,如果不放心第三方软件可以安装谷歌自家的"ChromeRemoteDesktop"APP。推荐一个官方工具:微软的“MicrosoftRemoteDesktop”,MicrosoftRemoteDesktop是微软自家出的远程桌面软件,有iOS/Android/WP8版本,相对于其他远程桌(Chrome/Teamviewer/向日葵等等),最大的优点是PC端无需安装客户端,安全性高。缺点是由于我国的宽带固定外网IP资源不足,个人用户很难设置好远程访问(电信用户应该可以用花生壳域名解析绑定域名访问)。手机远程控制Win7系统方法大同小异,以MicrosoftRemoteDesktop为例做个简单教程。先确定被控制的电脑的系统必须是专业版以上的win7系统且账号有管理员权限和登陆密码。依次打开控制面板→系统和安全,在系统一栏下方有一个允许远程访问,点击打开。点击允许远程连接到此计算机,并且勾上仅允许运行使用网络级别身份验证的远程桌面的计算机连接(建议)。接下来依次打开控制面板→系统和安全→允许应用通过Windows防火墙,点击更改设置,找到远程桌面和远程协助(一般为最下方),将后面的两个框都勾上,点击确定保存。查看自己的内网IP地址,按Win+R,输入cmd,跳出对话框,输入ipconfig,在跳出的一筐数字中找到一栏,IPv4地址,记录下后面的地址。手机安装好MicrosoftRemoteDesktop(以下简称RDP)最新版本。打开RDP,点击加号,点击Desktp添加一台电脑,在PCname中填写之前IPv4地址,在Username可选entereverytime每次输入账户或Adseraccount建立常用账户,建议选后者,然后在新窗口中Username填写管理员用户名,在Password中填写相对应密码,点击save保存回到之前窗口再点save保存。这时会回到RDP主页面并自动新建立一个电脑桌面快捷方式(可以点右下角击扩展菜单选择编辑或删除),点击后会弹出的确认窗口,如果是只用一次,直接选择connect,如果以后常用,可以选择Doyouwant……下单选框打勾。接下来就能远程桌面。此时电脑会自动注销,点击上方IP会弹出常用按键,点左上角打叉是关闭远程桌面,home是回RDP主页,点touch可以切换为全屏触摸操作(默认触摸移动鼠标),点击键盘图标,便可弹出手机/Pad自带的输入法。