2012-03-15 20 views
1

私はiPhoneからUDPブロードキャストを送信し、このようなポートが開いているすべてのデバイスからのタイムアウト期間を持つUDP応答を待ち受けます。同じサブネットの私のカスタムデバイスは答えますか? (私が192.168.1.100で、カスタムデバイスのIPが192.168.1.201の場合) "SmallSockets"または "cocoaAsyncSocket"を使用するには? 応答を聞くためにどのような機能を使用しますか? Thanx!UDP要求を255.255.255.255に送信し、iOSで応答を待っています

答えて

3

私はcocoaAsyncSocketを使用することに決めました。

[udpSocket sendData:datatosend toHost:@"192.168.1.113" port:port withTimeout:-1 tag:0]; 

を受け取るために:

- (void)udpSocket:(GCDAsyncUdpSocket *)sock didReceiveData:(NSData *)data fromAddress:(NSData *)address withFilterContext:(id)filterContext 
{ 
    NSString *msg = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; 

    NSString *host = nil; 
    uint16_t port = 0; 
    [GCDAsyncUdpSocket getHost:&host port:&port fromAddress:address]; 

    if (msg) 
    { 
     NSLog(@"Message = %@, Adress = %@ %i",msg,host,port); 
    } 
    else 
    { 
     NSLog(@"Error converting received data into UTF-8 String"); 
    } 
} 
あなたが使用できるブロードキャストに
関連する問題