Android获取热点主机ip和连接热点手机ip的代码
其中定义WIFIAP的几个状态
publicstaticfinalintWIFI_AP_STATE_DISABLING=10; publicstaticfinalintWIFI_AP_STATE_DISABLED=11; publicstaticfinalintWIFI_AP_STATE_ENABLING=12; publicstaticfinalintWIFI_AP_STATE_ENABLED=13; publicstaticfinalintWIFI_AP_STATE_FAILED=14;
对应于WifiMangaer.java中对这几个状态的定义。
获取WIFI热点的状态:
publicintgetWifiApState(ContextmContext){ WifiManagerwifiManager=(WifiManager)mContext.getSystemService(Context.WIFI_SERVICE); try{ Methodmethod=wifiManager.getClass().getMethod("getWifiApState"); inti=(Integer)method.invoke(wifiManager); Log.i(TAG,"wifistate:"+i); returni; }catch(Exceptione){ Log.e(TAG,"CannotgetWiFiAPstate"+e); returnWIFI_AP_STATE_FAILED; } }
判断Wifi热点是否可用:
privateArrayListgetConnectedHotIP(){ ArrayList connectedIP=newArrayList (); try{ BufferedReaderbr=newBufferedReader(newFileReader( "/proc/net/arp")); Stringline; while((line=br.readLine())!=null){ String[]splitted=line.split("+"); if(splitted!=null&&splitted.length>=4){ Stringip=splitted[0]; connectedIP.add(ip); } } }catch(Exceptione){ e.printStackTrace(); } returnconnectedIP; } //输出链接到当前设备的IP地址 publicvoidprintHotIp(){ ArrayList connectedIP=getConnectedHotIP(); StringBuilderresultList=newStringBuilder(); for(Stringip:connectedIP){ resultList.append(ip); resultList.append("\n"); } System.out.print(resultList); Log.d(TAG,"---->>hewwresultList="+resultList); }
当然在应用中要添加访问WIFI设备的权限:
获取热点主机ip地址的代码:
WifiManagerwifiManager=(WifiManager)getSystemService(Context.WIFI_SERVICE); DhcpInfoinfo=wifiManager.getDhcpInfo(); System.out.println(info.serverAddress);
总结
以上所述是小编给大家介绍的Android获取热点主机ip和连接热点手机ip的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!