Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS-GCDAsyncUdpSocket抛出错误域=NSPOSIXErrorDomain Code=65“;“没有到主机的路线”;_Ios_Gcdasyncudpsocket - Fatal编程技术网

iOS-GCDAsyncUdpSocket抛出错误域=NSPOSIXErrorDomain Code=65“;“没有到主机的路线”;

iOS-GCDAsyncUdpSocket抛出错误域=NSPOSIXErrorDomain Code=65“;“没有到主机的路线”;,ios,gcdasyncudpsocket,Ios,Gcdasyncudpsocket,有时我会犯这样的错误 错误域=NSposiXerorDomain代码=65“没有到主机的路由” UserInfo={NSLocalizedDescription=没有到主机的路由, NSLocalizedFailureReason=发送()函数中出现错误。} 在某些路由器中打开udp套接字时。我不知道这是什么原因 这是我打开udp套接字的代码: - (void)openSocket { if(_asyncUdpSocket == nil) { _asyncUdpS

有时我会犯这样的错误

错误域=NSposiXerorDomain代码=65“没有到主机的路由” UserInfo={NSLocalizedDescription=没有到主机的路由, NSLocalizedFailureReason=发送()函数中出现错误。}

在某些路由器中打开udp套接字时。我不知道这是什么原因

这是我打开udp套接字的代码:

- (void)openSocket
{
    if(_asyncUdpSocket == nil)
    {
        _asyncUdpSocket = [[GCDAsyncUdpSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)];
    }

    if(![_asyncUdpSocket isClosed])
    {
        return;
    }

    NSError *error;

    if (![_asyncUdpSocket enableBroadcast:YES error:&error])
    {
        NSLog(@"AsyncUdp: enable broadcast failed error: %@", error);
    }

    if (![_asyncUdpSocket bindToPort:_port error:&error])
    {
        NSLog(@"AsyncUdp: bind to port %li failed error: %@", (unsigned long)_port, error);
    }

    if (![_asyncUdpSocket joinMulticastGroup:_address error:&error])
    {
        NSLog(@"AsyncUdp: join multicast group %@ failed error: %@", _address, error);
    }

    if(![_asyncUdpSocket beginReceiving:&error])
    {
        NSLog(@"AsynUdp: begin receiving error: %@", error);
    }

    if(error != nil)
    {
        NSLog(@"Udp failed to open!");

        [_delegate onUdpSocketDidOpenfailed];
    }

    else
    {
        NSLog(@"UdpSocket - opend udp socket successful!");

        [_delegate onUdpSocketDidOpen];
    }
}

请注意,这种情况在iPhone 7中经常发生

在将Xcode更新到12.5版后,我在运行DLNA应用程序项目时遇到了同样的问题。我通过将Xcode降级到12.4版来修复它