C#tcpipサーバーからiphone/ipodtouchアプリケーションにwifi経由でデータを送受信しようとしています。このため私はGoogleプロジェクトからcocoaAsyncSocketを使用しました。私はボタンを押し、私は要求されたデータ(例えば、曲のタイトル)を返すサーバーにiPodからの要求を送信する場合..私は何番目の曲がplayngであることを知りたい... C#サーバーから私は1の間隔で送信私のアプリに2番目のメッセージ。私のアプリケーションでは、1秒の間隔を持つタイマーで私はasyncSocket readDataWithTimeoutメソッドを呼び出します。私の問題は、8-9秒後にそのメソッドがもう呼び出されないということです。サーバーへの接続がまだアクティブであるとC#のサーバーは、まだデータを送信します。..CocoaAsyncSocketを使用してC#tcpipサーバーからメッセージを受信します。
私は何をしたい、次のものです: - > C#のサーバ彼がプレイしているものの歌Winampのを頼む - > Winampの曲 を果たしています私のアプリに曲のタイトルを送信します。 - > iphoneアプリはデータを受信して表示します
私は短い時間の後にreadDataWithTimeoutメソッドがもう呼び出されない理由はわかりません。おそらくC#サーバーから送信されたメッセージの短い時間ですか?
は、ここではいくつかのこと、 ソリン
hello rob、ありがとうございます。 私は30秒のタイムアウトでソケットからデータを読み込んだ場合、winampがそのタイムアウトで曲を変更すると、私のiPodのアプリケーションはそのデータを最大30秒の遅延で受信するため、考えました。データを更新することはできません... どのように私は最初の間違いをやっていないような方法でサーバーへのipodとの間で送信/読み取り処理を行うことができますか? Sorin –
ありがとうございました..私のアプリでは、C#サーバーがデータをアプリケーションにプッシュしなければならない状況があります(アプリケーションがボタンを押して明示的に要求していないデータ) –
'-readDataWithTimeout:tag:'を呼び出すと、データを待っている時間を「タイムアウト」秒までブロックします。それ以前にデータが表示された場合は、即座に '-onSocketDidReadData:withTag:'をポストしますので、そこに遅延があってはいけません。 –