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)

원격 파일의 통계 정보를 반환합니다.

공개 생성자

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 연결에 실패한 경우

가져오기

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 대신 원격 파일의 문자열만 처리하므로 가져오는 파일의 크기를 알 수 없으며 ISyncProgressMonitor이 진행 상황을 올바르게 표시하지 않습니다.

매개변수
remoteFilepath String: 원격 파일의 전체 경로

localFilename String: 로컬 대상입니다.

monitor SyncService.ISyncProgressMonitor: 진행 상황 모니터입니다. null일 수 없습니다.

생성 값
IO 예외가 발생한 경우
TimeoutException 기기에서 응답을 읽는 동안 시간 초과가 발생한 경우
SyncException 동기화 예외가 발생한 경우

push

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

여러 파일 또는 디렉터리를 푸시합니다.

매개변수
local String: 푸시할 로컬 파일

remote FileListingService.FileEntry: 디렉터리를 나타내는 원격 FileEntry

monitor SyncService.ISyncProgressMonitor: 진행 상황 모니터

생성 값
SyncException 일부 파일을 푸시할 수 없는 경우
연결에 I/O 오류가 있는 경우
TimeoutException 기기에서 응답을 읽는 동안 시간 초과가 발생한 경우

push

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)

원격 파일의 통계 정보를 반환합니다.

매개변수
path String: 원격 파일

반환 값
SyncService.FileStat 모든 것이 정상적으로 진행된 경우 모드, 크기, 최종 수정 정보가 포함된 FileStat, 그렇지 않은 경우 null

생성 값
IOException
TimeoutException 기기에서 응답을 읽는 동안 시간 초과가 발생한 경우