0

こんにちは、私はこのサンプル コードCocoaAsyncSocket-master (udp クライアント) を使用して、ソケットでクライアント サーバーを作成しています。メッセージを区別するにはどうすればよいですか。メッセージを送信するコードは次のとおりです。

    NSData *data = [msg dataUsingEncoding:NSUTF8StringEncoding]; 
   [udpSocket sendData:data toHost:host port:port withTimeout:-1 tag:tag];

さまざまなメッセージを送信してさまざまな考えを実行する方法を知りたい、ソケットを介して画像またはファイルを送信する方法を知る必要がある

ありがとう

メッセージを区別することがすでにわかっています:

NSMutableDictionary *params = [[NSMutableDictionary alloc] init];

[params setObject:@"note"  forKey:@"note"];
[params setObject:@"" forKey:@"ImagemData"];

NSData *data = [NSJSONSerialization dataWithJSONObject:params options:NSJSONWritingPrettyPrinted error:nil];

ソケットを介して送信できる nsdata にイメージを変換する必要があることを知っているので、これを試しました。

UIImage *img = [UIImage imageNamed:@"image1.jpeg"];
[params setObject:@UIImagePNGRepresentation(img) forKey:@"ImagemData"];

しかし、動作しません

4

1 に答える 1

0

標準の CocoaAsyncSocket TCP/IP ソケットを使用してこのようにしましたが、同じように動作するはずです。

UIImage* img;

// ... populate img

// get a JPEG representation of the UIImage
NSData* data =  UIImageJPEGRepresentation(img, 0.5f); // 0.5 is compression quality

// you can also get it in PNG format
// NSData* data =  UIImagePNGRepresentation(img);

[udpSocket sendData:data toHost:host port:port withTimeout:-1 tag:tag];

メッセージを区別することで何を意味するのかわからないため、その点についてはお答えできません。

于 2013-10-17T11:25:27.093 に答える