ios – 如何在同一个wifi中获取其他设备的主机名?

ios – 如何在同一个wifi中获取其他设备的主机名?,第1张

概述我找到了一些可以扫描本地网络并列出所有设备信息的iOS应用程序. 我好奇. 图: 第1步 – 凝胶本地IP 适用于iOS 7及更低版本 #include <ifaddrs.h>#include <arpa/inet.h>- (NSString *)getIPAddress { NSString *address = @"error"; struct ifaddrs *int 我找到了一些可以扫描本地网络并列出所有设备信息的iOS应用程序.

我好奇.

图:

解决方法 第1步 – 凝胶本地IP

适用于iOS 7及更低版本

#include <ifaddrs.h>#include <arpa/inet.h>- (Nsstring *)getIPAddress {    Nsstring *address = @"error";    struct ifaddrs *interfaces = NulL;    struct ifaddrs *temp_addr = NulL;    int success = 0;    // retrIEve the current interfaces - returns 0 on success    success = getifaddrs(&interfaces);    if (success == 0) {        // Loop through linked @R_404_6818@ of interfaces        temp_addr = interfaces;        while(temp_addr != NulL) {            if(temp_addr->ifa_addr->sa_family == AF_INET) {                // Check if interface is en0 which is the wifi connection on the iPhone                if([[Nsstring stringWithUTF8String:temp_addr->ifa_name] isEqualToString:@"en0"]) {                    // Get Nsstring from C String                    address = [Nsstring stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_addr)->sin_addr)];                }            }            temp_addr = temp_addr->ifa_next;        }    }    // Free memory    freeifaddrs(interfaces);    return address;}

iOS 8

[[NSHost currentHost] address]

 第2步 – 获取在线IP

https://github.com/tonymillion/Reachability
使用可访问性,您可以获得子网IP的可访问性.

Reachability* reach = [Reachability reachabilityWithHostname:subnetIp];

 第3步 – 解析主机名

Apple有一篇很棒的文章,其中涵盖了HostnameResolving主题.
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/NetworkingTopics/Articles/ResolvingDNSHostnames.html

您也可以在iOS8中尝试更简单的变体

[[NSHost hostWithAddress:@"173.194.34.24"] name]

 示例项目

https://github.com/mongizaidi/LAN-Scan这是一个小项目,它执行局域网扫描,您只需要解析主机名,您将获得所需的结果.

总结

以上是内存溢出为你收集整理的ios – 如何在同一个wifi中获取其他设备的主机名?全部内容,希望文章能够帮你解决ios – 如何在同一个wifi中获取其他设备的主机名?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1060685.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存