所需权限:
要获取关联WiFi的IP地址的整数表示形式:
返回//WiFi地址的整数是指wifi未打开或访问返回0时
隐私获取wifi (
int ip=0;
wifimanagerwifimanager=(wifi manager ) getsystemservice ) context.wifi_service;
if (wifi管理器. iswifienabled () ) ({//WiFi是否已打开
IP=wifi info.getip地址(;
}
返回IP;
}
要将整数地址转换为常规格式:
//整数变换的天真洋葱
隐私保护措施(inti ) {
(返回(i0xff ).() ) )0xFF (.) ) )0xFF ) )。
'.' (i 240xFF );
}
获取GPRS地址:
//手机的GPRS地yx DLR/pprivatestringgetlocalipaddress (
try {
for (enumeration en=network interface.getnetworkinterfaces (; en.hasMoreElements (; () )。
enumerationenumipaddr=intf
. getinetaddresses (enum IP addr.hasmoreelements (; () )。
inetaddressinetaddress=enum IP addr.nextelement (;
if (! inet地址. isloopbackaddress (
returninetaddress.gethostaddress ().toString );
}
}
}
}catch(socketexceptionex ) {
log.e('wifipreferenceIPaddress ',ex.toString ) );
}
返回' ';
}
完整的代码如下。
publicclassmainactivityextendsactivity {
Button bt往常的小虾,bt失眠的大象,bt漂亮的航空;
@Override
protectedvoidoncreate (边界维护实例state )。
super.oncreate (savedinstancestate;
setcontentview (r.layout.activity _ main;
bt平时的小虾=(Button ) findviewbyid ) r.id.Button1);
bt失眠的大象=(Button ) findviewbyid ) r.id.Button2);
bt漂亮的航空=(Button ) findviewbyid ) r.id.Button3);
电视TV=(textview ) findviewbyid ) r.id.textview1;
bt平时的小虾. setonclicklistener (newonclicklistener ) )。
@Override
公共语音在线(查看) {
//todo自动- generated method stub
int wifi=getWiFi (;
stringIP=inttoIP(wifi );
电视. settext (IP;
}
);
bt失眠的大象. setonclicklistener (newonclicklistener ) )。
@Override
公共语音在线(查看) {
//todo自动- generated method stub
string IP=getlocalip地址(;
电视. settext (IP;
}
);
bt漂亮的航空. setonclicklistener (newonclicklistener ) )。
@Override
公共语音在线(查看) {
String ip=' ';
//todo自动- generated method stub
int wifi=getWiFi (;
if(wifi!=0}{
IP=inttoIP(wifi;
}else{
IP=getlocalip地址(;
}
电视. settext (IP;
}
);
}
返回//WiFi地址的整数是指wifi未打开或访问返回0时
隐私获取wifi (
int ip=0;
wifimanagerwifimanager=(wifi manager ) getsystemservice ) context.wifi_service;
if (wifi管理器. iswifienabled () ) ({//WiFi是否已打开
IP=wifi info.getip地址(;
}
返回IP;
}
//整数变换的天真洋葱
隐私保护措施(inti ) {
(返回(i0xff ).() ) )0xFF (.) ) )0xFF ) )。
'.' (i 240xFF );
}
//手机的GPRS地yx DLR/pprivatestringgetlocalipaddress (
try {
for (enumeration en=network interface.getnetworkinterfaces (; en.hasMoreElements (; () )。
enumerationenumipaddr=intf
. getinetaddresses (enum IP addr.hasmoreelements (; () )。
inetaddressinetaddress=enum IP addr.nextelement (;
if (! inet地址. isloopbackaddress (
returninetaddress.gethostaddress ().toString );
}
}
}
}catch(socketexceptionex ) {
log.e('wifipreferenceIPaddress ',ex.toString ) );
}
返回' ';
}
}