2012-04-20 6 views
4

実際に私は追跡アプリを開発中で、2つのAndroid端末間で位置情報の更新を送信して地図上で互いに追跡できるようにしたいと考えています。私のアプリケーションは、より良いトラッキングのために他のアンドロイドデバイスからリアルタイムのアップデートを取得する必要があります。
私は技術のカップルを検索しましたが、最適な1かわからないソケット使用2つのAndroid携帯電話を接続してWIFI経由でデータを転送する

がサーバーとして一つのデバイスを作るのが、他の
クライアントとして使用可能な制限:

  • どうかのサーバのIPアドレスが変更されました(WIFIには 静的IPがないため)
  • サーバのIPアドレスがプライベートの場合にアクセスできません
  • のみクライアントは、中間サーバを使用したクライアントへ

を接続することはできませんサーバーおよびサーバーに接続できます。中間サーバを作成し、そのサーバーを経由して通信を行います。
可能な制限:

  • スロー各Androidデバイスは、最初のサーバー にこれらの更新を送信し、サーバが他のAndroidデバイスにこれらの更新をプッシュしているため1があるかについて

私にあなたの提案を入力してくださいこれを行う最善の方法。

答えて

1

あなたがサポートしたいDevice APIレベルを指定していないので、Android v4(APIレベル14)デバイスのオプションを提供します。これはWi-Fi Directと呼ばれ、電話機間でP2P接続が可能です。本質的にあなたのソケットアプローチですが、簡単に近隣探索を可能にし、両方向への転送を可能にします。

+0

ご返信ありがとうございます。 APIレベル10のために開発していますので、Wi-FIダイレクトを使用することはできません。 –

0

よくWi-Fiがあります。あなたのマップが非常に小さい場合を除きます。 Wifiは100m(本当に良い一日)です

私は他の携帯電話のようにアンドロイドについてよく分かりませんが、あなたは痛みを感じています。 私は、ピアツーピアであなたの電話に接続することが本当のスローグかもしれないと思うでしょう。いくつかのプロバイダはそれを起こさせません。

私は回答以上のアプローチをしています。
あなたのIPアドレスを取得できるかどうかは、アンドロイドの電話で確認してください。
机から、そのIPアドレスをpingします。
うまくいけば、あなたはうまくいきます。
ID情報のサイズが指定されていても、メインデータキャリアとしてpingを使用できます。
ピングには、単なるランダムバイト以上のものを含めることができます。 pingで送信するコンテンツには、IDとGPSを含めることができます。
---チェックサムが含まれている可能性があります---

開発が速くなるため、作業デスクのほとんどは電話になります。その後、携帯電話がpingを捕まえることができたら...簡単なように。

関連する問題