
在Android中对Wifi *** 作,android本身提供了一些有用的包,在androidnetwifi包下面。主要包括以下几个类和接口:
1ScanResult
主要用来描述已经检测出的接入点,包括接入点的地址,接入点的名称,身份认证,频率,信号强度等信息。
2WifiConfiguration
Wifi网络的配置,包括安全设置等。
3WifiInfo
wifi无线连接的描述,包括接入点,网络连接状态,隐藏的接入点,IP地址,连接速度,MAC地址,网络ID,信号强度等信息。这里简单介绍一下这里的方法:
getBSSID() 获取BSSID
getDetailedStateOf() 获取客户端的连通性
getHiddenSSID() 获得SSID 是否被隐藏
getIpAddress() 获取IP 地址
getLinkSpeed() 获得连接的速度
getMacAddress() 获得Mac 地址
getRssi() 获得80211n 网络的信号
getSSID() 获得SSID
getSupplicanState() 返回具体客户端状态的信息
4WifiManager
这个不用说,就是用来管理我们的wifi 连接,这里已经定义好了一些类,可以供我们使用。
获取WIFI网卡的状态
WIFI网卡的状态是由一系列的整形常量来表示的。
1WIFI_STATE_DISABLED : WIFI网卡不可用(1)
2WIFI_STATE_DISABLING : WIFI网卡正在关闭(0)
3WIFI_STATE_ENABLED : WIFI网卡可用(3)
4WIFI_STATE_ENABLING : WIFI网正在打开(2) (WIFI启动需要一段时间)
5WIFI_STATE_UNKNOWN : 未知网卡状态
最重要的一个就是 你要设置权限
最重要的一个就是 你要设置权限
希望帮助到你
先进行WiFi权限的声明
<!-- 获取WiFi状态 -->
<uses-permission android:name="androidpermissionACCESS_NETWORK_STATE" />
<uses-permission android:name="androidpermissionACCESS_WIFI_STATE" />
<!-- api <= Android29调用setWifiEnabled -->
<uses-permission android:name="androidpermissionCHANGE_WIFI_STATE" />
<!-- 定位权限(api >= 23 用于 WIFI扫描)-->
<uses-permission android:name="androidpermissionACCESS_FINE_LOCATION" />
<uses-permission android:name="androidpermissionACCESS_COARSE_LOCATION" />
注意:ACCESS_FINE_LOCATION和ACCESS_COARSE_LOCATION是危险级权限需要使用中还需要动态申请,申请其中一个即可。
WifiManager mWifiManager = (WifiManager) getApplicationContext()getSystemService(ContextWIFI_SERVICE);
if (BuildVERSIONSDK_INT >=BuildVERSION_CODESR) {
Intent panelIntent =new Intent(SettingsPanelACTION_WIFI);
startActivityForResult(panelIntent,null);
}else{ mWifiManagersetWifiEnabled(!isEnable);}
可以通过监听系统广播来了解WiFi状态。
WIFI_STATE_CHANGED_ACTION:WiFi开关状态;
SCAN_RESULTS_AVAILABLE_ACTION:WiFi列表变化;
RSSI_CHANGED_ACTION:WiFi信号强度变化。
IntentFilter mFilter =new IntentFilter();
mFilteraddAction(WifiManagerWIFI_STATE_CHANGED_ACTION);
mFilteraddAction(WifiManagerSCAN_RESULTS_AVAILABLE_ACTION);
mFilteraddAction(WifiManagerRSSI_CHANGED_ACTION);
mReceiver =new BroadcastReceiver() {
@Override
public void onReceive(Context context,Intent intent) {
handleEvent(intent);
}
};
registerReceiver(mReceiver, mFilter);
private void handleEvent(Intent intent) {
String action = intentgetAction();
if (WifiManagerWIFI_STATE_CHANGED_ACTIONequals(action)) {
final int wifiState =mWifiManagergetWifiState();
if(wifiState ==WifiManagerWIFI_STATE_ENABLED){
postDelayed(()->{mRefreshLayoutautoRefresh();},1000);
}
}else if (WifiManagerSCAN_RESULTS_AVAILABLE_ACTIONequals(action)) {
}else if (WifiManagerRSSI_CHANGED_ACTIONequals(action)) {
if(SystemcurrentTimeMillis() -mLastUpateWifiRssiTime <1000){//刷新太快
return;
}
}
updateWifiChange();
}
切记:wifistate切换到WifiManagerWIFI_STATE_ENABLED,mWifiManagerisWifiEnabled()需要有个等待时间切换。
3的基础上解析广播应答
private void updateWifiChange() {
final int wifiState =mWifiManagergetWifiState();
switch (wifiState) {
case WifiManagerWIFI_STATE_ENABLED:
ArrayListresults = (ArrayList)mWifiManagergetScanResults();
updateApListView(results);
mWlanSbsetChecked(mWifiManagerisWifiEnabled() );
break;
case WifiManagerWIFI_STATE_ENABLING:
break;
case WifiManagerWIFI_STATE_DISABLING:
mAdapterclearData();
mWlanSbsetChecked(mWifiManagerisWifiEnabled() );
break;
case WifiManagerWIFI_STATE_DISABLED:
break;
}
}
WiFi是一种无线联网技术,常见的是使用无线路由器。那么在这个信号覆盖的范围内都可以采用WiFi连接的方式进行联网。如果无线路由器连接了一个ADSL线路或者其他的联网线路,则又被称为“热点”。
在Android中对WiFi *** 作,Android本身提供一些有用的包,在anroidnetwifi包下面。
是一种特殊的 Ad-hoc LAN (一种支持点对点访问的无线网络应用模式)的应用,一个无线网络至少由一个连接到有线网络的AP和若干无线工作站组成,这种配置称为一个基本服务装置。一群计算机设定相同的
BSS名称,即可自成一个group,而此BSS名称,即所谓BSSID。通常,手机WLAN中,bssid其实就是无线路由的MAC地址。
网络ID。
无线网络的安全认证模式。
SSID(Service Set Identif)用于标识无线局域网,SSID不同的无线网络是无法进行互访的。
wifi无线连接的描述,包括接入点,网络连接状态,隐藏的接入点,IP地址,连接速度,MAC地址,网络ID,信号强度等信息。这里简单介绍一下这里的方法:
用来管理我们的wifi 连接,这里已经定义好了一些类,可以供我们使用,获取WiFi网卡状态。
WIFI网卡的状态是由一系列的整形常量来表示的。
WiFi需求申请权限,在AndroidManifestxml文件中填写。
1打开WiFi
2扫描WiFi信号
3得到扫描WIFI结果
4根据WIFI的名称SSID判定指定WIFI是否已经配置好,配置好则返回其networkId,用于连接。之前尝试了BSSID地址没成功,所以只能使用SSID
5如果需要连接的WIFI没有配置好,即没有保存密码。则为指定名称ssid的WIFI添加密码信息psw,添加成功后返回给其分配的networId,同于连接
6根据步骤6配置好需要连接的WIFI密码信息后,下面通过networkId连接指定WIFI。在连接经过步骤6刚添加配置信息的WIFI信号之前需要重新执行下步骤4,得到新的配置好信息的列表。
怎么设定手机wifi静态ip来提高网速?
设定静态ip,一般来说目的是为了提高网速,这个需要是把手机设定成跟路由器同样的闸道器,仅对wifi网速有提高作用,不过我个人觉得提高不明显。
手机wifi设定成静态ip的用处如下: 连线速度快; 不用每次都登入不用每次都输帐号密码的登入; 省下了手机自动获取IP的时间了,把手机wifi设成静态IP,所以在连线无线的一瞬间就能马上连线好。
Android手机WiFi怎样设定静态IP一、找到并点选手机桌面上的”设定“,开启”设定“视窗。
二、在“设定”视窗中点选”无线和网路“选项。开启”无线和网路管理“视窗。
三、点选窗口里”WLAN 设定(设定和管理无线接入点)“选项。即开启”WLAN设定“视窗。
四、在”WLAN设定“视窗,直接点选手机下方的”选项“键,会d出”扫描“和”高阶“两个选项。直接点选”高阶“选项,进入IP设定。
五、在IP设定下面,勾选”使用静态IP“
六、下面的IP地址、闸道器、网路掩码、域名等就可编辑输入,如设定IP时,点选IP地址后面的倒三角,会d出IP地址输入视窗,输入以后点选”确定“即可。设定闸道器、网路掩码、域名时同IP地址设定一样。
1 选择: 设定 - 无线和网路 -WLAN设定 2 按选单键,然后选 高阶 3 IP地址设定选项,选择“ 使用静态IP” 4 手动设定你的IP 地址, 大部分路由器的地址都是 1921681 (XX 可以是 2-254 之间的任何数字,为了不和其他装置冲突,可以将数字设定大一些,例如 1921681210等), 闸道器都是19216811,子网掩码都是 2552552550 ,实际情况根据你的路由器设定。5 设定DNS伺服器地址,大部分路由器可以设定第一个DNS为路由器地址(19216811),第二个DNS地址请检视路由器拨号状态下的DNS地址,也可以直接打电话问你的网路服务提供商。 6 然后 储存退出 就可以了。
点选手机下面的系统工具按钮
在d出的选单中选择设定
在d出的选单项中选择无线和网路
在无线网路设定中选择wi_fi设定
在wi_fi设定下点选手机下面的系统工具按钮 ,在d出的选单中选择高阶
勾选使用静态IP复选框
点选IP地址,设定IP,可根据wifi网所在网段来设定,这里设定为19216802 ,这里经需要说明的是IP地址设定范围是19216802-1921680254,在这个范围内可以任意设定,不要使用19216801因为这个会分配给路由
IP设定后如果要上网,还必须要设定闸道器,否则可能无法开启网页 闸道器一般设定值为19216801,这个也是视情设定
设定网路掩码,一般只有一个网所以闸道器都是2552552550
可以根据需要设定dns,一般dns设定和闸道器一样即可,对于有的wifi网来说,dns必须要设定,否则可能打不开网页所以要看情况,如果网页不能开启,请设定DNS,就本例来说,设定为 19216801就行
怎么设定手机wifi网速
手机的wifi网速是无法设定的。wifi网速是和相关宽频网路速度有关,和手机没有直接关系。
怎样设定手机s7568的静态ip自己找到答案了,选择连线讯号那里,按住你要选的那个无线连线,然后点 “修改网路”然后再勾上那个“显示高阶选项” IP设定里选择静态IP 下面就可以设定你想要的固定IP了
vivo手机怎么设定静态ip?具体 *** 作:
手机静态IP的设定方法->WLAN->点需要连线网路右边的“>”处->使用静态IP设定为“开”。
并根据您路由器设定内容,设定手机中的:IP地址、闸道器、网路掩码、主域名伺服器。
vivo为一个专注于智慧手机领域的手机品牌,vivo和追求乐趣、充满活力、年轻时尚的群体一起打造拥有卓越外观、专业级音质、极致影像、愉悦体验的智慧产品,并将敢于追求极致、持续创造惊喜作为vivo的坚定追求。
2014年vivo品牌的国际化之路全面开启,除中国大陆市场外,vivo进驻的海外市场包含印度、泰国、缅甸、马来西亚、印度尼西亚、越南和菲律宾。2016-2017年,vivo正式成为NBA中国官方合作伙伴。
2016年底,vivo高层在媒体沟通会上透露,将在国内外成立研发中心,国内部分有深圳、东莞长安、南京、杭州和北京,而在国外将在美国圣地亚哥分设研发中心。vivo将由原来的音乐和拍照的单点技术突破很可能将变成从智慧手机的整体技术创新全面推进。
手机怎么设定静态ip 在哪设定
你好,首先,获取自己IP地址、子网掩码、预设闸道器、及DNS伺服器。
在电脑上使用:WIN键+R开启执行(或者直接在“开始”选单中选择“执行”),输入:CMD进入DOS命令列,输入:ipconfig/all执行即可检视IP地址等相关资讯。
>02
设定手机IP地址
点选“设定”进入WLAN,选择需要连线的“WIFI”热点。
在IP设定栏选择“静态”进入,接着按照第一步中获取的IP地址进行设定。
注意:IP地址的最后三位数是可以根据自己的需要设定的,但不能与其他装置设定的地址一样,(设定范围为:1—255)不得超过255。
如何设定安卓手机WIFI的静态IP地址红米手机是这样的:点选你当前连线的网路 进入网路详细 - IP设定 从DHCP变成静态,然后填你的静态IP地址、路由等资讯就好了,希望能帮到你
开启wifi,在设定里面,选择静态ip地址,点进去输入就可以了。
如果您使用的是华为手机,连接wifi后出现信号弱的情况,可以通过以下方法进行排查:
1 建议您检查手机是否使用金属保护壳、磁吸保护壳、磁吸支架或磁力吸盘,有使用建议取掉尝试,金属和磁性材质容易对信号造成干扰,导致手机信号变差。
2 建议您移动至路由器信号覆盖较强区域,有遮挡或者距离路由器较远会对信号有影响。
3 建议您重启路由器尝试,查看信号是否恢复正常。
4 建议您在设置中搜索还原网络设置,根据屏幕提示还原。(注:会删除WLAN和蓝牙连接记录)
如果您尝试以上方法,均未能解决您的问题,建议您备份数据(微信/QQ等需单独备份),携带购机凭证前往华为客户服务中心检测。
android拨号界面输入工程命令##4636##
进入无线测试页面
点击“WLAN information”进入wlan信息页面
点击“WLAN status”进入wlan测试页面
点击Refresh stats按钮,刷新当前的关联状态。
刷新之后,界面显示当前关联无线路由的RSSI。
这里是-40dB,还是一个比较好的信号水平。个人经验,一般-30~-65dB,都算不叫好的水平。
以上就是关于Android手机应用开发中连接Wifi时,怎么获取所连Wifi的路由器品牌全部的内容,包括:Android手机应用开发中连接Wifi时,怎么获取所连Wifi的路由器品牌、Android的WiFi功能总结、Android-WiFi详解等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)