SyncService
public
class
SyncService
extends Object
| java.lang.Object | |
| ↳ | com.android.tradefed.device.server.SyncService |
デバッグ ブリッジを介してデバイス / エミュレータとの間でプッシュ / プルを行うための同期サービス クラス。
SyncService オブジェクトを取得するには、IDevice.getSyncService() を使用します。
概要
ネストされたクラス | |
|---|---|
class |
SyncService.FileStat
|
interface |
SyncService.ISyncProgressMonitor
このインターフェースを実装するクラスは、転送の進行状況の表示を処理するメソッドを提供します。 |
パブリック コンストラクタ | |
|---|---|
SyncService(InetSocketAddress address, IDevice device)
同期サービス オブジェクトを作成します。 |
|
パブリック メソッド | |
|---|---|
void
|
close()
接続を閉じます。 |
static
SyncService.ISyncProgressMonitor
|
getNullProgressMonitor()
何も行わない同期進行状況モニターを返します。 |
boolean
|
openSync()
同期接続を開きます。 |
void
|
pull(FileEntry[] entries, String localPath, SyncService.ISyncProgressMonitor monitor)
ファイルまたはフォルダをプルします。 |
void
|
pullFile(FileListingService.FileEntry remote, String localFilename, SyncService.ISyncProgressMonitor monitor)
単一のファイルを取得します。 |
void
|
pullFile(String remoteFilepath, String localFilename, SyncService.ISyncProgressMonitor monitor)
単一のファイルを取得します。 |
void
|
push(String[] local, FileListingService.FileEntry remote, SyncService.ISyncProgressMonitor monitor)
複数のファイルまたはディレクトリをプッシュします。 |
void
|
push(String[] local, String remote, SyncService.ISyncProgressMonitor monitor)
複数のファイルまたはディレクトリをプッシュします。 |
void
|
pushFile(String local, String remote, SyncService.ISyncProgressMonitor monitor)
単一のファイルをプッシュします。 |
SyncService.FileStat
|
statFile(String path)
リモート ファイルの stat 情報を返します。 |
パブリック コンストラクタ
SyncService
public SyncService (InetSocketAddress address,
IDevice device)同期サービス オブジェクトを作成します。
| パラメータ | |
|---|---|
address |
InetSocketAddress: 接続するアドレス |
device |
IDevice: サービスが接続する IDevice。 |
パブリック メソッド
閉じる
public void close ()
接続を閉じます。
getNullProgressMonitor
public static SyncService.ISyncProgressMonitor getNullProgressMonitor ()
何も行わない同期進行状況モニターを返します。これにより、UI を表示したくない、または表示する必要のないバックグラウンド タスクは、有効な ISyncProgressMonitor を渡すことができます。
このオブジェクトは複数回再利用でき、同時実行スレッドで使用できます。
| 戻り値 | |
|---|---|
SyncService.ISyncProgressMonitor |
|
openSync
public boolean openSync ()
同期接続を開きます。これは、push[File] / pull[File] の呼び出しの前に呼び出す必要があります。
| 戻り値 | |
|---|---|
boolean |
接続が開かれた場合は true、adb が接続を拒否した場合は false。これは、IDevice が無効な場合に発生する可能性があります。 |
| 例外 | |
|---|---|
TimeoutException |
接続がタイムアウトした場合。 |
AdbCommandRejectedException |
adb がコマンドを拒否した場合 |
|
adb への接続に失敗した場合。 |
pull
public void pull (FileEntry[] entries, String localPath, SyncService.ISyncProgressMonitor monitor)
ファイルまたはフォルダをプルします。
| パラメータ | |
|---|---|
entries |
FileEntry: プルするリモート アイテム |
localPath |
String: ローカルの宛先。エントリ数が 1 より大きい場合、または一意のエントリがフォルダの場合、これはフォルダである必要があります。 |
monitor |
SyncService.ISyncProgressMonitor: プログレス モニター。null にすることはできません。 |
| 例外 | |
|---|---|
|
com.android.ddmlib.SyncException |
|
IOException |
|
com.android.ddmlib.TimeoutException |
SyncException |
|
TimeoutException |
|
pullFile
public void pullFile (FileListingService.FileEntry remote, String localFilename, SyncService.ISyncProgressMonitor monitor)
単一のファイルを取得します。
| パラメータ | |
|---|---|
remote |
FileListingService.FileEntry: リモート ファイル |
localFilename |
String: ローカル宛先。 |
monitor |
SyncService.ISyncProgressMonitor: プログレス モニター。null にすることはできません。 |
| 例外 | |
|---|---|
|
IO 例外が発生した場合。 |
TimeoutException |
デバイスからのレスポンスの読み取りがタイムアウトした場合。 |
SyncException |
同期例外が発生した場合。 |
pullFile
public void pullFile (String remoteFilepath,
String localFilename,
SyncService.ISyncProgressMonitor monitor)単一のファイルを取得します。
このメソッドは FileEntry ではなくリモートファイルの String のみを扱うため、プルされるファイルのサイズが不明で、ISyncProgressMonitor が進行状況を正しく表示しません。
| パラメータ | |
|---|---|
remoteFilepath |
String: リモート ファイルのフルパス |
localFilename |
String: ローカル宛先。 |
monitor |
SyncService.ISyncProgressMonitor: プログレス モニター。null にすることはできません。 |
| 例外 | |
|---|---|
|
IO 例外が発生した場合。 |
TimeoutException |
デバイスからのレスポンスの読み取りがタイムアウトした場合。 |
SyncException |
同期例外が発生した場合。 |
関連項目:
プッシュ
public void push (String[] local,
FileListingService.FileEntry remote,
SyncService.ISyncProgressMonitor monitor)複数のファイルまたはディレクトリをプッシュします。
| パラメータ | |
|---|---|
local |
String: プッシュするローカル ファイル |
remote |
FileListingService.FileEntry: ディレクトリを表すリモート FileEntry |
monitor |
SyncService.ISyncProgressMonitor: プログレス モニター |
| 例外 | |
|---|---|
SyncException |
一部のファイルをプッシュできなかった場合 |
|
接続で I/O エラーが発生した場合 |
TimeoutException |
デバイスからのレスポンスの読み取りがタイムアウトした場合 |
プッシュ
public void push (String[] local,
String remote,
SyncService.ISyncProgressMonitor monitor)複数のファイルまたはディレクトリをプッシュします。
| パラメータ | |
|---|---|
local |
String: プッシュするローカル ファイル |
remote |
String: ディレクトリを表すリモートパス |
monitor |
SyncService.ISyncProgressMonitor: プログレス モニター |
| 例外 | |
|---|---|
SyncException |
一部のファイルをプッシュできなかった場合 |
|
接続で I/O エラーが発生した場合 |
TimeoutException |
デバイスからのレスポンスの読み取りがタイムアウトした場合 |
pushFile
public void pushFile (String local,
String remote,
SyncService.ISyncProgressMonitor monitor)単一のファイルをプッシュします。
| パラメータ | |
|---|---|
local |
String: ローカル ファイルパス。 |
remote |
String: リモート ファイルパス。 |
monitor |
SyncService.ISyncProgressMonitor: プログレス モニター。null にすることはできません。 |
| 例外 | |
|---|---|
SyncException |
ファイルをプッシュできなかった場合 |
|
接続で I/O エラーが発生した場合。 |
TimeoutException |
デバイスからのレスポンスの読み取りがタイムアウトした場合。 |
statFile
public SyncService.FileStat statFile (String path)
リモート ファイルの stat 情報を返します。
| パラメータ | |
|---|---|
path |
String: リモート ファイル |
| 戻り値 | |
|---|---|
SyncService.FileStat |
すべてがうまくいった場合は、モード、サイズ、最終更新日時情報を含む FileStat。それ以外の場合は null |
| 例外 | |
|---|---|
|
IOException |
TimeoutException |
デバイスからのレスポンスの読み取りがタイムアウトした場合。 |