相关疑难解决方法(0)

如何在目标c中获得外部ip

我找了一些代码来帮助我获得iphone连接的ip.

我找到了这个:

- (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 list 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 …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch objective-c ios

6
推荐指数
1
解决办法
1万
查看次数

IP地址?- 可可

如何通过单击按钮制作显示您的IP地址的GUI程序?请,没有困难的解释,我不久前刚刚开始了Cocoa.

谢谢,

凯文

user-interface xcode cocoa objective-c

4
推荐指数
2
解决办法
2万
查看次数

如何使用NSHost获取外部IP地址?

我正在尝试找到我的外部IP地址,但我只在NAT后面获得本地IP地址.

NSArray *addresses = [[NSHost currentHost] addresses];
Run Code Online (Sandbox Code Playgroud)

有没有办法打印出公共地址?使用NSHost是个好主意吗?

cocoa objective-c

2
推荐指数
1
解决办法
3928
查看次数

在Objective-C中获取公共IP?

在我的应用程序中,我需要获取一个NSString对象值等于用户公共/互联网IP地址的值.我试图解决这个问题,但两者都返回本地IP地址而不是公开.以下是我的两种方法.一个更精确,并始终返回数组中的正确项.另一个没有.(因为只选一个随机索引)...

- (NSString *)getPublicIP {   
    NSHost *publicIP = [[[NSHost currentHost] addresses] objectAtIndex:0];
    return publicIP;  
}
Run Code Online (Sandbox Code Playgroud)

其他更精确:(但不获得公共IP)

 //start get ip
- (NSString *)getIPWithNSHost { 

NSArray *addresses = [[NSHost currentHost] addresses];
NSString *stringAddress;
for (NSString *anAddress in addresses) {
    if (![anAddress hasPrefix:@"127"] && [[anAddress componentsSeparatedByString:@"."] count] == 4) {
    stringAddress = anAddress;
    break;
    }
    else {
    stringAddress = @"IPv4 address not available" ;

}
    //NSLog(stringAddress);
}
NSLog (@"getIPWithNSHost: stringAddress = %@ ",stringAddress); 
stringAddress = (@"getIPWithNSHost: stringAddress = %@ ",stringAddress);

return  stringAddress;

} …
Run Code Online (Sandbox Code Playgroud)

ip external objective-c ip-address

1
推荐指数
1
解决办法
5406
查看次数