2013-04-03 15 views
6

Ich bin auf der Suche nach einer Lösung, die Android API verwendet, um eine Textdatei von einem Android-Gerät über USB-Kabel an einen Computer zu übertragen. Ich habe USB host gefunden, aber ich kann das nicht verwenden, da der Computer nicht als Gerät für den Android-Host fungieren kann.Übertragung von Dateien von Android auf Computer über USB programmgesteuert

Haben Sie Vorschläge, wie ich das erreichen kann?

+1

Möchten Sie dies programmgesteuert durchführen? Oder müssen Sie einfach das Gerät anschließen und Dateien per Drag & Drop verschieben? – FoxMulder900

+0

Ich möchte es programmgesteuert machen, wie ich in der Frage "welche Android API verwendet" erwähnt habe. – niculare

+1

Ich sehe, ich bin nicht sicher, ob dies ohne eine Anwendung auf dem Client-Rechner möglich ist, sonst wäre es wahrscheinlich ein großes Sicherheitsrisiko. – FoxMulder900

Antwort

3

ich dieses Problem gelöst haben adb status-window kontinuierlich unter Verwendung für Gerätestatus zu überprüfen, und wenn ein neues Gerät angeschlossen ist, werden die benötigten Dateien auf den Computer übertragen adb pull Befehl.

Um eine portable Lösung (d. H. Unabhängig von Android-Plattform) zu erreichen, habe ich nur die Dateien "adb.exe" und "AdbWinApi.dll" in meine Anwendung kopiert und den adb von dort verwendet.

+0

Nach dem Kopieren 'adb.exe' und' AdbWinApi.dll' Datei was soll ich tun? läuft diese 'Runtime.getRuntime().exec ("adb -s ziehen /sdcard/juned.jpg/root/juned/android_usb /"); 'wird in Ordnung sein, oder ich muss noch etwas tun? – juned

0

Sie können eine App schreiben, die http verwendet, um mit Ihrem PC Kontakt aufzunehmen und (POST-) Daten an einen bekannten Endpunkt zu senden.

Beachten Sie, dass die App nur Zugriff auf die Daten der App hat. Sie können nicht auf eine beliebige Datei aus dem Dateisystem zugreifen

+1

Das Problem ist, dass ich nicht auf die drahtlose Netzwerkverbindung verlassen kann. Das einzige, worauf ich mich verlassen kann, ist das USB-Kabel. – niculare

+2

Das gleiche hier ... Ich muss eine Verbindung zu einer DB auf einem Windows-PC über USB herstellen. – Zonata

2

Hatte ähnliches Problem, wo eine Software auf dem PC installiert werden musste auf Datei im Android-Handy über USB zugreifen können. Nach langer Recherche ist hier was für mich (nicht sicher, ob das die beste Lösung ist, aber es hat funktioniert). Windows verfügt über die WPD-API (Windows Portable Device), mit der der Inhalt eines Geräts über USB aufgelistet werden kann (und Dateien zwischen Client und Gerät kopiert werden können).

Es gibt nur wenige Implementierungen in Java http://code.google.com/p/jmtp/ (funktioniert gut, aber doesnt Unterstützung Kopierfunktion von Gerät zu PC, obwohl es einige Unterstützung verfügbar ist dieser Code mit Quelle zu tun) ein anderer ist jusbpmp (erhältlich in google-Repository) (wenn jemand eine gut dokumentierte und gewartete Implementierung findet, teilen Sie)

aber da jmtp funktionierte nicht für mich (Kopie Funktion Quellkompilierung (für 64bit OS) fehlgeschlagen), schrieb C# Programm von Grund auf Dateien vom Gerät auf den PC zu kopieren. hier ist ein nettes Tutorial http://cgeers.com/2011/08/13/wpd-transferring-content/

Verwandte Themen