SyncService

public class SyncService
extends Object

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


ซิงค์คลาสบริการเพื่อพุช/ดึงไปยัง/จากอุปกรณ์/โปรแกรมจำลองผ่าน Debug Bridge

หากต้องการรับออบเจ็กต์ 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 จริงหากเปิดการเชื่อมต่อ เท็จหาก adb ปฏิเสธการเชื่อมต่อ ซึ่งอาจเกิดขึ้นได้ในกรณีต่อไปนี้ IDeviceไม่ถูกต้อง

การขว้าง
TimeoutException ในกรณีที่การเชื่อมต่อหมดเวลา
AdbCommandRejectedException หาก adb ปฏิเสธคำสั่ง
หากเชื่อมต่อกับ adb ไม่สำเร็จ

ดึง

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

ดึงไฟล์หรือโฟลเดอร์

พารามิเตอร์
entries FileEntry: รายการจากระยะไกลที่จะดึง

localPath String: ปลายทางในพื้นที่ หากจำนวนรายการมากกว่า 1 หรือหากรายการที่ไม่ซ้ำกันเป็นโฟลเดอร์ คุณควรระบุเป็นโฟลเดอร์

monitor SyncService.ISyncProgressMonitor: แถบแสดงความคืบหน้า ต้องไม่เป็นค่าว่าง

การขว้าง
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: แถบแสดงความคืบหน้า ต้องไม่เป็นค่าว่าง

การขว้าง
ในกรณีที่เกิดข้อยกเว้น IO
TimeoutException ในกรณีที่อ่านการตอบกลับจากอุปกรณ์ไม่ทัน
SyncException ในกรณีที่เกิดข้อยกเว้นในการซิงค์

ดูเพิ่มเติม:

pullFile

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

ดึงไฟล์เดียว

เนื่องจากวิธีนี้จัดการกับสตริงสำหรับไฟล์ระยะไกลแทนที่จะเป็น FileEntry ระบบจึงไม่ทราบขนาดของไฟล์ที่ดึงมา และ ISyncProgressMonitor จะไม่แสดงความคืบหน้าอย่างถูกต้อง

พารามิเตอร์
remoteFilepath String: เส้นทางแบบเต็มไปยังไฟล์ระยะไกล

localFilename String: ปลายทางในพื้นที่

monitor SyncService.ISyncProgressMonitor: แถบแสดงความคืบหน้า ต้องไม่เป็นค่าว่าง

การขว้าง
ในกรณีที่เกิดข้อยกเว้น 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: แถบแสดงความคืบหน้า ต้องไม่เป็นค่าว่าง

การขว้าง
SyncException หากส่งไฟล์ไม่ได้
ในกรณีที่เกิดข้อผิดพลาด I/O ในการเชื่อมต่อ
TimeoutException ในกรณีที่อ่านการตอบกลับจากอุปกรณ์ไม่ทัน

statFile

public SyncService.FileStat statFile (String path)

แสดงข้อมูลสถิติของไฟล์ระยะไกล

พารามิเตอร์
path String: ไฟล์ระยะไกล

คิกรีเทิร์น
SyncService.FileStat ออบเจ็กต์ FileStat ที่มีข้อมูลโหมด ขนาด และการแก้ไขล่าสุด หากทุกอย่างเป็นไปด้วยดี หรือ null ในกรณีอื่นๆ

การขว้าง
IOException
TimeoutException ในกรณีที่อ่านการตอบกลับจากอุปกรณ์ไม่ทัน