Ich habe eine Frage mit einer allgemeinen Design-Implementierung. Hoffe, dass jemand, der fähiger ist als ich, mir hilft.So laden Sie eine Datei von einem Server
Ich möchte eine Anwendung auf einem Android-Client und einem Java-Server basieren. Lokale WLAN-Übertragung, kein 3G.
Grundsätzlich muss der Client eine Verbindung zum Server herstellen und eine Datei mit einem Code zum Herunterladen anfordern.
Wie kann ich das tun?
Dinge, die ich kenne:
- ich einen Hintergrund-Thread in dem Client erstellen, muss eine Datei auf der SD-Karte zu erstellen und einen Fortschrittsbalken aktualisieren, um einen Handler mit dem UI-Thread zu kommunizieren.
- Der Server muss Multithread und nicht blockierend sein.
- Die Datei ist eine binäre Datei wie ein MP3-Audio. Also der Server muss:
- Senden Sie Informationen über die Datei: Name und Gesamtlänge.
- Öffnen Sie die Datei, Lesen und Senden von Bytes, während es das Ende nicht erreicht.
- Der Kunde muss:
- die Informationen über die Datei empfangen und eine leere Datei erstellen.
- Bytes lesen und in die leere Datei ablegen. Fortschrittsbalken aktualisieren
- Wenn alle Bytes empfangen wurden, schließen Sie die Datei.
Ich habe Kenntnisse einen Client und Server in C (sehr schrecklich) die Umsetzung aber ich beginne mit einer echten Client-Server-Anwendung in Java getan.
Fragen:
- Wie kann ich eine Binärdatei wie ein mp3 von einem Server auf einen Client herunterladen?
- Wo muss ich meine Serveranwendung ablegen? Ich vermute, dass ich ein jar erstellen muss, speichern Sie es in einem Ordner und führen Sie es beim Start des PCs, richtig?
Vielen Dank!