Android "SHAREit"のようなwi-fiを使用してデータ共有アプリケーションを構築したいのですが、どこから始めたのかわかりませんでした。
したがって、「SHAREit」の技術的概念を明確にした場合、理解するのは非常に効率的でした。
実行できるすべてのリソースとリンクをテストしてください。
Android Wi-Fi P2Pライブラリ、および このページのドキュメントから開始 を使用してください。基本的に、各デバイスは、ユーザーID情報などを含むことができるDNS-SD TXTを送信します。デバイスは、ソケットを確立することなくそのコンテンツを表示できます。要件の項目2を達成するために後で行うことです。
SHAREthemというライブラリを記述して、SHAREitは機能します。ライブラリは、WiFi Hotspotを使用してデバイス間のP2Pファイル共有と転送を容易にします。また、レシーバーにアプリがインストールされていない場合は、app to web sharingもサポートしますWiFi Hotspotを使用したファイル共有に関連する技術を理解するのに役立つことを願っています。
このライブラリには多くの可動部分があるため、実装の詳細で blog を作成しました。ここでいくつかのコンポーネントをカバーしようとします:
HotspotController
HCはJava Reflectionを使用します。これは、Androidでホットスポットを有効/無効にするためのAPIがないためです。機能には次のものがあります。
コントローラは、ポートと送信者名を含むSHAREthem送信者を認識するために受信者が傍受できるSSIDを持つOPEN Wifiホットスポット設定を作成します。
共有モードが無効になっているときにユーザーのホットスポット設定を復元します
接続されているWiFiクライアントのリストを提供します。
SHAREthemサーバー
NanoHttpdから拡張された小さなHTTPサーバーは、IPアドレスをホスト名として使用して受信者に送信者データを提供し、デフォルトでユーザーまたはシステムによって割り当てられたポートで動作します。
SHAREthemサービス
SHAREthem-serverのライフサイクルを管理し、停止アクションでフォアグラウンド通知を処理するAndroidサービス。
UI(アクティビティ)
共有/受信アクションを処理するAndroidアクティビティ
Receiver-ダウンロード可能なファイルをリストするUIを提供します。 Android Download Managerにダウンロード要求を送信して、ファイルのダウンロードを開始します。
送信者-接続された各クライアント(受信者)のファイル転送ステータスとともに、IP、ポート、および接続されたクライアントの情報を表示します。