ModulePusher

public class ModulePusher
extends Object

java.lang.Object
   ↳ com.android.tradefed.targetprep.ModulePusher


สรุป

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

class ModulePusher.ModulePushError

เกิดข้อผิดพลาดร้ายแรงระหว่างการพุชโมดูล Mainline 

ค่าคงที่

String LINE_BREAK

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

ModulePusher(ITestDevice device, long waitTimeMs, long delayWaitingTimeMs)

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

void installModules(ImmutableMultimap<String, File> moduleFiles, boolean factoryReset, boolean disablePackageCache)

ติดตั้ง moduleFiles ลงในอุปกรณ์โดยใช้ adb push

วิธีการที่ได้รับการป้องกัน

void checkApexActivated(ITestDevice device, List<ModulePusher.ModuleInfo> modules)

ตรวจสอบว่าได้เปิดใช้งานจุดสูงสุดทั้งหมดแล้ว

Path getApexPathUnderSystem(ITestDevice device, String packageName)
List<ModulePusher.ModuleInfo> getModulesFailToActivate(List<ModulePusher.ModuleInfo> toInstall, Set<ITestDevice.ApexInfo> activatedApexes)

รับโมดูลที่เปิดใช้งานไม่สำเร็จ

String[] getPathsOnDevice(ITestDevice device, String packageName)

รับเส้นทางของไฟล์การติดตั้งแพ็กเกจในอุปกรณ์

Path[] getPreloadPaths(ITestDevice device, File[] moduleFiles, String packageName, int apiLevel)

รับเส้นทางของแพ็กเกจที่โหลดล่วงหน้าในอุปกรณ์

ImmutableMap<String, String> parsePackageVersionCodes(String output)

แยกวิเคราะห์บรรทัดของ "package:{key} versionCode:{value}" เป็นแผนที่

void setupDevice(ITestDevice device)

adb root และ remount อุปกรณ์ก่อนที่จะ push ไฟล์ภายใต้ /system

void waitForDeviceToBeResponsive(long waitTime)

ค่าคงที่

LINE_BREAK

public static final String LINE_BREAK

ค่าคงที่: "\r?\n"

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

ModulePusher

public ModulePusher (ITestDevice device, 
                long waitTimeMs, 
                long delayWaitingTimeMs)

พารามิเตอร์
device ITestDevice

waitTimeMs long

delayWaitingTimeMs long

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

installModules

public void installModules (ImmutableMultimap<String, File> moduleFiles, 
                boolean factoryReset, 
                boolean disablePackageCache)

ติดตั้ง moduleFiles ลงในอุปกรณ์โดยใช้ adb push

พารามิเตอร์
moduleFiles ImmutableMultimap: Multimap จากชื่อแพ็กเกจไปยังไฟล์แพ็กเกจ ในกรณีที่แยกแพ็กเกจ แพ็กเกจพื้นฐานควรเป็นแพ็กเกจแรกในลำดับการทำซ้ำ

factoryReset boolean: หากโหลดซ้ำผ่านการรีเซ็ตเป็นค่าเริ่มต้น

disablePackageCache boolean

ส่ง
DeviceNotAvailableException
ModulePusher.ModulePushError
TargetSetupError

วิธีการที่ได้รับการป้องกัน

checkApexActivated

protected void checkApexActivated (ITestDevice device, 
                List<ModulePusher.ModuleInfo> modules)

ตรวจสอบว่าได้เปิดใช้งานจุดสูงสุดทั้งหมดแล้ว

พารามิเตอร์
device ITestDevice: อยู่ระหว่างการทดสอบ

modules List

ส่ง
ModulePusher.ModulePushError หากการเปิดใช้งานล้มเหลว
DeviceNotAvailableException

getApexPathUnderSystem

protected Path getApexPathUnderSystem (ITestDevice device, 
                String packageName)

พารามิเตอร์
device ITestDevice

packageName String

การคืนสินค้า
Path

ส่ง
DeviceNotAvailableException
ModulePusher.ModulePushError

getModulesFailToActivate

protected List<ModulePusher.ModuleInfo> getModulesFailToActivate (List<ModulePusher.ModuleInfo> toInstall, 
                Set<ITestDevice.ApexInfo> activatedApexes)

รับโมดูลที่เปิดใช้งานไม่สำเร็จ

พารามิเตอร์
toInstall List

activatedApexes Set: ชุดของจุดยอดที่ใช้งานอยู่บนอุปกรณ์

การคืนสินค้า
List<ModulePusher.ModuleInfo> รายการที่มี apexinfo ของโมดูล Apex อินพุตที่เปิดใช้งานไม่สำเร็จ

getPathsOnDevice

protected String[] getPathsOnDevice (ITestDevice device, 
                String packageName)

รับเส้นทางของไฟล์การติดตั้งแพ็กเกจในอุปกรณ์

พารามิเตอร์
device ITestDevice: อยู่ระหว่างการทดสอบ

packageName String: ของโมดูล

การคืนสินค้า
String[] เส้นทางของไฟล์ทั้งหมดในแพ็กเกจ

ส่ง
DeviceNotAvailableException หากอุปกรณ์ไม่พร้อมใช้งาน
ModulePusher.ModulePushError

getPreloadPaths

protected Path[] getPreloadPaths (ITestDevice device, 
                File[] moduleFiles, 
                String packageName, 
                int apiLevel)

รับเส้นทางของแพ็กเกจที่โหลดล่วงหน้าในอุปกรณ์

สำหรับแพ็กเกจที่แยก ให้ส่งคืนเส้นทางของไดเรกทอรีแพ็กเกจตามด้วยเส้นทางของไฟล์ ด้วยเหตุนี้ ขนาดของผลตอบแทนจึงมากกว่า 1 เสมอในกรณีนี้ สำหรับแพ็กเกจที่ไม่ได้แยก ให้ส่งคืนเส้นทางของไฟล์การติดตั้งที่โหลดไว้ล่วงหน้า

พารามิเตอร์
device ITestDevice: อยู่ระหว่างการทดสอบ

moduleFiles File: ไฟล์โมดูลในเครื่องที่จะติดตั้ง

packageName String: ของโมดูล

apiLevel int: ของอุปกรณ์

การคืนสินค้า
Path[] เส้นทางของไฟล์ที่โหลดล่วงหน้า

ส่ง
DeviceNotAvailableException
ModulePusher.ModulePushError

parsePackageVersionCodes

protected ImmutableMap<String, String> parsePackageVersionCodes (String output)

แยกวิเคราะห์บรรทัดของ "package:{key} versionCode:{value}" เป็นแผนที่

พารามิเตอร์
output String

การคืนสินค้า
ImmutableMap<String, String>

setupDevice

protected void setupDevice (ITestDevice device)

adb root และ remount อุปกรณ์ก่อนที่จะ push ไฟล์ภายใต้ /system

พารามิเตอร์
device ITestDevice

ส่ง
DeviceNotAvailableException หากอุปกรณ์ไม่พร้อมใช้งาน
ModulePusher.ModulePushError หากติดตั้งอุปกรณ์อีกครั้งไม่ได้

waitForDeviceToBeResponsive

protected void waitForDeviceToBeResponsive (long waitTime)

พารามิเตอร์
waitTime long