私は、ユーザーがチャットできるアプリをしたいと考えていますが、視覚的には画面上のものをペイントします。画面は半分に分割され、各参加者は半分に何かを描画し、それは他の参加者に表示されます。Androidでチャット/スケッチをリアルタイムでどのように共有できますか?
タッチスクリーン上でのスケッチは、カラー/ブラシの選択、消しゴムなどをユーザに提供することは非常に簡単でなければなりません。私は何らかのメッセージにユーザ入力を取り込む必要があります。遠隔参加者で再生する必要があります。
これらの2人のユーザーはどのように通信しますか? JSON + AppEngine + XMPPについて考えています。
- スケッチアクションを
client A
からJSONにシリアライズし、それらを保存するAppEngineにプッシュします。このアプローチは、サーバ上のものをP2P接続よりも優れているのでしょうか?電話A-> AppEngine->電話B往復のために重大な遅延が追加される可能性があります client B
はどのようにメッセージを取得しますか?私はAppEngineと常時接続することはできません。 this questionにプッシュ通知に関するものがあります。 XMPPが動作しない場合、サーバーをポーリングする必要がありますか?
各クライアントはサーバー側の履歴または描画イベント(JSonなどで説明)を保持できると思います。すべての描画の機会に、それはサーバー上の新しい情報をプッシュします。一方、N秒ごとに、クライアントは最新の描画操作のバージョンを他のクライアントから引き出し、異なる場合はダウンロードします。素敵なプロジェクトのように聞こえる、私にもっと知ってもらいましょう:) –