FileListingService

public final class FileListingService
extends Object

java.lang.Object
   ↳ com.android.ddmlib.FileListingService


ให้บริการแสดงรายการไฟล์ข้างเคียงของ IDevice

สรุป

คลาสเรียนที่ซ้อนกัน

class FileListingService.FileEntry

แสดงรายการในไดเรกทอรี 

interface FileListingService.IListingReceiver

คลาสที่ใช้การติดตั้งใช้งานอินเทอร์เฟซนี้จะมีเมธอดที่จัดการผลลัพธ์แบบไม่พร้อมกัน จากคำสั่ง ls ในอุปกรณ์ 

ค่าคงที่

String DIRECTORY_APP

โฟลเดอร์แอปพลิเคชัน

String DIRECTORY_DATA

โฟลเดอร์ข้อมูลระดับบนสุด

String DIRECTORY_MNT

โฟลเดอร์การติดตั้งระดับบนสุด

String DIRECTORY_SDCARD

โฟลเดอร์ sdcard ระดับบนสุด

String DIRECTORY_SYSTEM

โฟลเดอร์ระบบระดับบนสุด

String DIRECTORY_TEMP

โฟลเดอร์ชั่วคราวระดับบนสุด

String FILE_SEPARATOR

ตัวคั่นไฟล์ฝั่งอุปกรณ์

long REFRESH_RATE

int TYPE_BLOCK

ประเภทรายการ: บล็อก

int TYPE_CHARACTER

ประเภทรายการ: ตัวละคร

int TYPE_DIRECTORY

ประเภทรายการ: ไดเรกทอรี

int TYPE_DIRECTORY_LINK

ประเภทรายการ: ลิงก์ไดเรกทอรี

int TYPE_FIFO

ประเภทรายการ: FIFO

int TYPE_FILE

ประเภทรายการ: ไฟล์

int TYPE_LINK

ประเภทรายการ: ลิงก์

int TYPE_OTHER

ประเภทรายการ: อื่นๆ

int TYPE_SOCKET

ประเภทรายการ: ซ็อกเก็ต

ช่อง

public static final Pattern LS_LD_PATTERN

public static final Pattern LS_L_PATTERN

รูปแบบนิพจน์ทั่วไปเพื่อแยกวิเคราะห์ผลลัพธ์จาก ls

public static final Pattern STAT_PATTERN

รูปแบบนิพจน์ทั่วไปเพื่อแยกวิเคราะห์ผลลัพธ์จากสถิติ

เครื่องมือสร้างสาธารณะ

FileListingService(IDevice device)

สร้างบริการแสดงรายการไฟล์สำหรับ IDevice ที่ระบุ

เมธอดสาธารณะ

FileEntry[] getChildren(FileListingService.FileEntry entry, boolean useCache, FileListingService.IListingReceiver receiver)

แสดงผลรายการย่อยของ FileEntry

FileEntry[] getChildrenSync(FileListingService.FileEntry entry)

แสดงผลรายการย่อยของ FileEntry

FileListingService.FileEntry getRoot()

แสดงผลองค์ประกอบรูท

ค่าคงที่

DIRECTORY_APP

public static final String DIRECTORY_APP

โฟลเดอร์แอปพลิเคชัน

ค่าคงที่: "app"

DIRECTORY_DATA

public static final String DIRECTORY_DATA

โฟลเดอร์ข้อมูลระดับบนสุด

ค่าคงที่: "data"

DIRECTORY_MNT

public static final String DIRECTORY_MNT

โฟลเดอร์การติดตั้งระดับบนสุด

ค่าคงที่: "mnt"

DIRECTORY_SDCARD

public static final String DIRECTORY_SDCARD

โฟลเดอร์ sdcard ระดับบนสุด

ค่าคงที่: "sdcard"

DIRECTORY_SYSTEM

public static final String DIRECTORY_SYSTEM

โฟลเดอร์ระบบระดับบนสุด

ค่าคงที่: "system"

DIRECTORY_TEMP

public static final String DIRECTORY_TEMP

โฟลเดอร์ชั่วคราวระดับบนสุด

ค่าคงที่: "tmp"

FILE_SEPARATOR

public static final String FILE_SEPARATOR

ตัวคั่นไฟล์ฝั่งอุปกรณ์

ค่าคงที่: "/"

REFRESH_RATE

public static final long REFRESH_RATE

ค่าคงที่: 5000 (0x0000000000001388)

TYPE_BLOCK

public static final int TYPE_BLOCK

ประเภทรายการ: บล็อก

ค่าคงที่ 3 (0x00000003)

TYPE_CHARACTER

public static final int TYPE_CHARACTER

ประเภทรายการ: ตัวละคร

ค่าคงที่ 4 (0x00000004)

TYPE_DIRECTORY

public static final int TYPE_DIRECTORY

ประเภทรายการ: ไดเรกทอรี

ค่าคงที่ 1 (0x00000001)

public static final int TYPE_DIRECTORY_LINK

ประเภทรายการ: ลิงก์ไดเรกทอรี

ค่าคงที่ 2 (0x00000002)

TYPE_FIFO

public static final int TYPE_FIFO

ประเภทรายการ: FIFO

ค่าคงที่ 7 (0x00000007)

TYPE_FILE

public static final int TYPE_FILE

ประเภทรายการ: ไฟล์

ค่าคงที่ 0 (0x00000000)

public static final int TYPE_LINK

ประเภทรายการ: ลิงก์

ค่าคงที่ 5 (0x00000005)

TYPE_OTHER

public static final int TYPE_OTHER

ประเภทรายการ: อื่นๆ

ค่าคงที่ 8 (0x00000008)

TYPE_SOCKET

public static final int TYPE_SOCKET

ประเภทรายการ: ซ็อกเก็ต

ค่าคงที่ 6 (0x00000006)

ช่อง

LS_LD_PATTERN

public static final Pattern LS_LD_PATTERN

LS_L_PATTERN

public static final Pattern LS_L_PATTERN

รูปแบบนิพจน์ทั่วไปเพื่อแยกวิเคราะห์ผลลัพธ์จาก ls

STAT_PATTERN

public static final Pattern STAT_PATTERN

รูปแบบนิพจน์ทั่วไปเพื่อแยกวิเคราะห์ผลลัพธ์จาก stat เช่น drwxr-xr-x root root 2021-08-02 09:20:53.000000000 -0700 4096 /

เครื่องมือสร้างสาธารณะ

FileListingService

public FileListingService (IDevice device)

สร้างบริการแสดงไฟล์สำหรับ IDevice ที่ระบุ

พารามิเตอร์
device IDevice: อุปกรณ์ที่เชื่อมต่อกับบริการ

เมธอดสาธารณะ

getChildren

public FileEntry[] getChildren (FileListingService.FileEntry entry, 
                boolean useCache, 
                FileListingService.IListingReceiver receiver)

แสดงผลรายการย่อยของ FileEntry

วิธีนี้รองรับกลไกแคช รวมถึงโหมดแบบซิงโครนัสและแบบไม่พร้อมกัน

หาก receiver เป็น null คำสั่ง ls ฝั่งอุปกรณ์จะ ดำเนินการแบบพร้อมกัน และเมธอดจะแสดงผลเมื่อคำสั่งเสร็จสมบูรณ์
หาก receiver ไม่ใช่ null ระบบจะเปิดใช้คำสั่งในเธรดแยก และเมื่อเสร็จสิ้นแล้ว ผู้รับจะได้รับการแจ้งเตือนผลลัพธ์

ระบบจะแคชผลลัพธ์ของคำสั่ง ls แต่ละรายการใน FileEntry ระดับบน useCache อนุญาตให้ใช้แคชนี้ได้ แต่ต้องเป็นแคชที่ถูกต้องเท่านั้น แคช จะใช้ได้เพียง FileListingService.REFRESH_RATE มิลลิวินาทีเท่านั้น หลังจากนั้นระบบจะเรียกใช้คำสั่ง ls ใหม่เสมอ

หากแคชถูกต้องและ useCache == true เมธอดจะแสดงผลค่าของแคชเสมอ ไม่ว่าจะมีการระบุ IListingReceiver หรือไม่ก็ตาม

พารามิเตอร์
entry FileListingService.FileEntry: รายการหลัก

useCache boolean: แฟล็กเพื่อใช้แคชหรือบังคับให้ใช้คำสั่ง ls ใหม่

receiver FileListingService.IListingReceiver: ตัวรับสำหรับการเรียกแบบอะซิงโครนัส

คิกรีเทิร์น
FileEntry[] รายการของเด็กหรือ null สำหรับการเรียกแบบไม่พร้อมกัน

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

getChildrenSync

public FileEntry[] getChildrenSync (FileListingService.FileEntry entry)

แสดงผลรายการย่อยของ FileEntry

เมธอดนี้เป็นเวอร์ชันซิงโครนัสที่ชัดเจนของ getChildren(com.android.ddmlib.FileListingService.FileEntry, boolean, com.android.ddmlib.FileListingService.IListingReceiver) ซึ่งเทียบเท่ากับการเรียกใช้ getChildren(FileEntry, false, null)

พารามิเตอร์
entry FileListingService.FileEntry: รายการหลัก

คิกรีเทิร์น
FileEntry[] รายชื่อบุตรหลาน

การขว้าง
TimeoutException ในกรณีที่การเชื่อมต่อหมดเวลาเมื่อส่งคำสั่ง
AdbCommandRejectedException หาก adb ปฏิเสธคำสั่ง
ShellCommandUnresponsiveException ในกรณีที่คำสั่งเชลล์ไม่ส่งเอาต์พุตใดๆ เป็นระยะเวลานานกว่า maxTimeToOutputResponse
ในกรณีที่เกิดข้อผิดพลาด I/O ในการเชื่อมต่อ

getRoot

public FileListingService.FileEntry getRoot ()

แสดงผลองค์ประกอบรูท

คิกรีเทิร์น
FileListingService.FileEntry ออบเจ็กต์ FileEntry ที่แสดงองค์ประกอบรูทหรือ null หาก อุปกรณ์ไม่ถูกต้อง