SyncService

public class SyncService
extends Object

java.lang.Object
   ↳ com.android.tradefed.device.server.SyncService


Synchronisierungsdienstklasse zum Senden/Abrufen von Daten an/von Geräten/Emulatoren über die Debug-Bridge.

Verwenden Sie IDevice.getSyncService(), um ein SyncService-Objekt abzurufen.

Zusammenfassung

Verschachtelte Klassen

class SyncService.FileStat

 

interface SyncService.ISyncProgressMonitor

Klassen, die diese Schnittstelle implementieren, bieten Methoden zum Anzeigen des Übertragungsfortschritts. 

Öffentliche Konstruktoren

SyncService(InetSocketAddress address, IDevice device)

Erstellt ein Sync-Dienstobjekt.

Öffentliche Methoden

void close()

Schließt die Verbindung.

static SyncService.ISyncProgressMonitor getNullProgressMonitor()

Gibt einen Synchronisierungsfortschrittsmonitor zurück, der nichts tut.

boolean openSync()

Öffnet die Synchronisierungsverbindung.

void pull(FileEntry[] entries, String localPath, SyncService.ISyncProgressMonitor monitor)

Ruft Dateien oder Ordner ab.

void pullFile(FileListingService.FileEntry remote, String localFilename, SyncService.ISyncProgressMonitor monitor)

Ruft eine einzelne Datei ab.

void pullFile(String remoteFilepath, String localFilename, SyncService.ISyncProgressMonitor monitor)

Ruft eine einzelne Datei ab.

void push(String[] local, FileListingService.FileEntry remote, SyncService.ISyncProgressMonitor monitor)

Überträgt mehrere Dateien oder Verzeichnisse.

void push(String[] local, String remote, SyncService.ISyncProgressMonitor monitor)

Überträgt mehrere Dateien oder Verzeichnisse.

void pushFile(String local, String remote, SyncService.ISyncProgressMonitor monitor)

Eine einzelne Datei übertragen.

SyncService.FileStat statFile(String path)

Gibt die Statistikinformationen der Remotedatei zurück.

Öffentliche Konstruktoren

SyncService

public SyncService (InetSocketAddress address, 
                IDevice device)

Erstellt ein Sync-Dienstobjekt.

Parameter
address InetSocketAddress: Die Adresse, zu der eine Verbindung hergestellt werden soll

device IDevice: die IDevice, mit der der Dienst eine Verbindung herstellt.

Öffentliche Methoden

Schließen

public void close ()

Schließt die Verbindung.

getNullProgressMonitor

public static SyncService.ISyncProgressMonitor getNullProgressMonitor ()

Gibt einen Synchronisierungsfortschrittsmonitor zurück, der nichts tut. So können Hintergrundaufgaben, für die keine Benutzeroberfläche angezeigt werden soll oder muss, ein gültiges ISyncProgressMonitor übergeben.

Dieses Objekt kann mehrmals wiederverwendet und von gleichzeitigen Threads verwendet werden.

Returns
SyncService.ISyncProgressMonitor

openSync

public boolean openSync ()

Öffnet die Synchronisierungsverbindung. Diese Methode muss vor allen Aufrufen von push[File] / pull[File] aufgerufen werden.

Returns
boolean „true“, wenn die Verbindung geöffnet wurde, „false“, wenn ADB die Verbindung abgelehnt hat. Das kann passieren, wenn IDevice ungültig ist.

Ausgabe
TimeoutException bei Zeitüberschreitung der Verbindung.
AdbCommandRejectedException Wenn der Befehl von ADB abgelehnt wird
Wenn die Verbindung zu adb fehlgeschlagen ist.

ziehen

public void pull (FileEntry[] entries, 
                String localPath, 
                SyncService.ISyncProgressMonitor monitor)

Ruft Dateien oder Ordner ab.

Parameter
entries FileEntry: die Remote-Elemente, die abgerufen werden sollen

localPath String: Das lokale Ziel. Wenn die Anzahl der Einträge > 1 ist oder der eindeutige Eintrag ein Ordner ist, sollte dies ein Ordner sein.

monitor SyncService.ISyncProgressMonitor: Der Fortschrittsmonitor. Darf nicht null sein.

Ausgabe
com.android.ddmlib.SyncException
IOException
com.android.ddmlib.TimeoutException
SyncException
TimeoutException

pullFile

public void pullFile (FileListingService.FileEntry remote, 
                String localFilename, 
                SyncService.ISyncProgressMonitor monitor)

Ruft eine einzelne Datei ab.

Parameter
remote FileListingService.FileEntry: die Remote-Datei

localFilename String: Das lokale Ziel.

monitor SyncService.ISyncProgressMonitor: Der Fortschrittsmonitor. Darf nicht null sein.

Ausgabe
im Falle einer E/A-Ausnahme.
TimeoutException bei einer Zeitüberschreitung beim Lesen von Antworten vom Gerät.
SyncException bei einer Synchronisierungsabweichung.

pullFile

public void pullFile (String remoteFilepath, 
                String localFilename, 
                SyncService.ISyncProgressMonitor monitor)

Ruft eine einzelne Datei ab.

Da bei dieser Methode nur ein String für die Remotedatei anstelle eines FileEntry verwendet wird, ist die Größe der abgerufenen Datei unbekannt und der ISyncProgressMonitor zeigt den Fortschritt nicht richtig an.

Parameter
remoteFilepath String: der vollständige Pfad zur Remotedatei

localFilename String: Das lokale Ziel.

monitor SyncService.ISyncProgressMonitor: Der Fortschrittsmonitor. Darf nicht null sein.

Ausgabe
im Falle einer E/A-Ausnahme.
TimeoutException bei einer Zeitüberschreitung beim Lesen von Antworten vom Gerät.
SyncException bei einer Synchronisierungsabweichung.

Weitere Informationen

push

public void push (String[] local, 
                FileListingService.FileEntry remote, 
                SyncService.ISyncProgressMonitor monitor)

Überträgt mehrere Dateien oder Verzeichnisse.

Parameter
local String: die lokalen Dateien, die übertragen werden sollen

remote FileListingService.FileEntry: die Remote-FileEntry, die ein Verzeichnis darstellt

monitor SyncService.ISyncProgressMonitor: Die Fortschrittsanzeige

Ausgabe
SyncException wenn einige Dateien nicht übertragen werden konnten
bei einem E/A-Fehler bei der Verbindung
TimeoutException bei einer Zeitüberschreitung beim Lesen von Antworten vom Gerät

push

public void push (String[] local, 
                String remote, 
                SyncService.ISyncProgressMonitor monitor)

Überträgt mehrere Dateien oder Verzeichnisse.

Parameter
local String: die lokalen Dateien, die übertragen werden sollen

remote String: der Remote-Pfad, der ein Verzeichnis darstellt

monitor SyncService.ISyncProgressMonitor: Die Fortschrittsanzeige

Ausgabe
SyncException wenn einige Dateien nicht übertragen werden konnten
bei einem E/A-Fehler bei der Verbindung
TimeoutException bei einer Zeitüberschreitung beim Lesen von Antworten vom Gerät

pushFile

public void pushFile (String local, 
                String remote, 
                SyncService.ISyncProgressMonitor monitor)

Eine einzelne Datei übertragen.

Parameter
local String: der lokale Dateipfad.

remote String: Der Remote-Dateipfad.

monitor SyncService.ISyncProgressMonitor: Der Fortschrittsmonitor. Darf nicht null sein.

Ausgabe
SyncException wenn die Datei nicht übertragen werden konnte
bei einem E/A-Fehler bei der Verbindung.
TimeoutException bei einer Zeitüberschreitung beim Lesen von Antworten vom Gerät.

statFile

public SyncService.FileStat statFile (String path)

Gibt die Statistikinformationen der Remotedatei zurück.

Parameter
path String: die Remote-Datei

Returns
SyncService.FileStat ein FileStat-Objekt mit dem Modus, der Größe und den Informationen zur letzten Änderung, wenn alles gut gegangen ist, andernfalls „null“

Ausgabe
IOException
TimeoutException bei einer Zeitüberschreitung beim Lesen von Antworten vom Gerät.