私のiOSチャットアプリケーションにSocket.IOを使用しています。 socket.io-client-swiftと呼ばれるチャットライブラリはSwiftにあり、私はそれをブリッジを使ってObjective-Cプロジェクトに手動で統合することができます。Objective-Cクライアントを使用したSocket.IO-Swiftライブラリ
私はXcodeのにライブラリーの上から 'ソース' フォルダをインポートし、以下のコードで私のChatViewControllerには#import "MyProjectName-Swift.h" を置い:http://localhost:3000/(私はローカルでのNode.jsを使用しています
//in viewDidLoad
NSURL* url = [[NSURL alloc] initWithString:@"http://localhost:3000/"];
SocketIOClient* socket = [[SocketIOClient alloc] initWithSocketURL:url options:@{@"log": @YES, @"forcePolling": @YES}];
[socket on:@"connect" callback:^(NSArray* data, SocketAckEmitter* ack) {
NSLog(@"socket connected");
}];
[socket on:@"currentAmount" callback:^(NSArray* data, SocketAckEmitter* ack) {
double cur = [[data objectAtIndex:0] floatValue];
[socket emitWithAck:@"canUpdate" withItems:@[@(cur)]](0, ^(NSArray* data) {
[socket emit:@"update" withItems:@[@{@"amount": @(cur + 2.50)}]];
});
[ack with:@[@"Got your currentAmount, ", @"dude"]];
}];
[socket connect];
)this tutorialのヘルプからのメッセージを送信するために、と私は私のXcodeのコンソールで同時にそれを見ることができますによって:だから
2016-05-13 14:59:20.345 CoreData_Chat[45303:372543] LOG SocketEnginePolling: Doing polling request
2016-05-13 14:59:24.033 CoreData_Chat[45303:373287] LOG SocketEnginePolling: Got polling response
2016-05-13 14:59:24.033 CoreData_Chat[45303:373287] LOG SocketEnginePolling: Doing polling request
2016-05-13 14:59:24.033 CoreData_Chat[45303:373285] LOG SocketEngine: Got message: 42["chat message","hii"]
2016-05-13 14:59:24.034 CoreData_Chat[45303:373285] LOG SocketIOClient: Should parse message: 2["chat message","hii"]
2016-05-13 14:59:24.034 CoreData_Chat[45303:373285] LOG SocketParser: Parsing 2["chat message","hii"]
2016-05-13 14:59:24.035 CoreData_Chat[45303:373285] LOG SocketParser: Decoded packet as: SocketPacket {type: 2; data: [chat message, hii]; id: -1; placeholders: -1; nsp: /}
2016-05-13 14:59:24.035 CoreData_Chat[45303:373285] LOG SocketIOClient: Handling event: chat message with data: (
hii)
を、どのように私はこのメッセージが私のアプリで表示および/またはサーバーにメッセージを送信するために発することができます。特にObjective-Cではこのことを説明する明確なチュートリアルはありません。誰も助けることができますか?ありがとうございました。
回答ができるだけ判読可能であることを確認するために、使用できる書式設定オプションを使用してください。コードスニペットが正しくフォーマットされていることを確認するコードハイライトオプションがあります – JordanMazurke