2012-03-12 48 views
4

私はRESTサービスのためにほとんど完全に、iOSクライアントを使っています。私が欠けているのは、クライアントがネットワーク上でUDPブロードキャストをリッスンする機能で、アップロードのホスト表示名とベースURLを受け取ります。ネットワーク上に複数のサーバーが存在し、アップロードをブロードキャストして待機している可能性があります。udpブロードキャストパケットを受信する

非同期が好ましいデバイスがデバイスを検出すると、サーバーがユーザーに表示され、ユーザーは任意の時点でサーバーを選択できるようにします。

ブロードキャスタは255.255.255.255に送信しているため、データは返されません。

私は客観的なCの初心者なので、シンプルで使いやすいものが最高です。

答えて

3

CocoaAsyncSocketをお勧めします。それはUDPソケットをうまく扱うことができます。私はそれを使って放送を聞いてみることはしていないが、おそらくあなたの最善の策だろう。

+1

私はそれが私にこのよう指示GCDAsyncSocketの新しいインスタンスを作成しようとすると:ImageShareViewController.o LDに にObjCクラス-REF:i386アーキテクチャ用 未定義のシンボル: "_OBJC_CLASS _ $ _ GCDAsyncUdpSocket"、から参照します:アーキテクチャi386のシンボルが見つかりません clang:エラー:リンカーコマンドが終了コード1で失敗しました(呼び出しには-vを使用します) 私はそれ以外では実行したくないことを意味していませんiPhoneのシミュレータはアーキテクチャが気に入らないためです何か案は? – nick

+0

これは、GCDAsyncUdpSocketコードをリンクしていないことを意味します。これは、iOSオブジェクトのみを持つ静的ライブラリをリンクしているか、ライブラリをまったくリンクしていないか、このターゲットの一部としてソースをコンパイルしていない可能性があります。 –

+0

私はARCを無効にしなければなりませんでした。私が気づくべきであるように行うことに重大なリスクはありますか? – nick

関連する問題