iOS获取当前连接的WiFi以及IP地址
导入头文件
#import#import #import
核心代码:
+(nullableNSString*)getCurrentLocalIP
{
NSString*address=nil;
structifaddrs*interfaces=NULL;
structifaddrs*temp_addr=NULL;
intsuccess=0;
//retrievethecurrentinterfaces-returns0onsuccess
success=getifaddrs(&interfaces);
if(success==0){
//Loopthroughlinkedlistofinterfaces
temp_addr=interfaces;
while(temp_addr!=NULL){
if(temp_addr->ifa_addr->sa_family==AF_INET){
//Checkifinterfaceisen0whichisthewificonnectionontheiPhone
if([[NSStringstringWithUTF8String:temp_addr->ifa_name]isEqualToString:@"en0"]){
//GetNSStringfromCString
address=[NSStringstringWithUTF8String:inet_ntoa(((structsockaddr_in*)temp_addr->ifa_addr)->sin_addr)];
}
}
temp_addr=temp_addr->ifa_next;
}
}
//Freememory
freeifaddrs(interfaces);
returnaddress;
}
+(nullableNSString*)getCurreWiFiSsid{
NSArray*ifs=(__bridge_transferid)CNCopySupportedInterfaces();
NSLog(@"Supportedinterfaces:%@",ifs);
idinfo=nil;
for(NSString*ifnaminifs){
info=(__bridge_transferid)CNCopyCurrentNetworkInfo((__bridgeCFStringRef)ifnam);
NSLog(@"%@=>%@",ifnam,info);
if(info&&[infocount]){break;}
}
return[(NSDictionary*)infoobjectForKey:@"SSID"];
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持毛票票!