GkiDeviceFlashPreparer

public class GkiDeviceFlashPreparer
extends BaseTargetPreparer implements ILabPreparer

java.lang.Object
   ↳ com.android.tradefed.targetprep.BaseTargetPreparer
     ↳ com.android.tradefed.targetprep.GkiDeviceFlashPreparer


أداة إعداد الهدف التي تعمل على تثبيت ذاكرة ROM على الجهاز باستخدام صورة عامة لنواة Android الشائعة يُرجى الاطّلاع على https://source.android.com/devices/architecture/kernel/android-common للحصول على التفاصيل.

ملخّص

طُرق وضع التصميم العامة

GkiDeviceFlashPreparer()

الإجراءات العامة

void setUp(TestInformation testInfo)

نفِّذ عملية إعداد الاستهداف للاختبار.

void validateGkiBootImg(ITestDevice device, IBuildInfo buildInfo)

من المتوقّع التحقّق من صحة صورة التشغيل GKI.

طُرق محمية

void addHashFooter(ITestDevice device, IBuildInfo buildInfo, File tmpDir)

من المتوقّع التحقّق من صحة صورة التشغيل GKI.

void buildGkiSystemDlkmImg(ITestDevice device, IBuildInfo buildInfo, File tmpDir)

إنشاء صورة GKI system_dlkm إذا تم توفير أرشيف system_dlkm

File extractSystemDlkmTarGzip(File systemDlkmArchive)

يستخرج ملف system_dlkm tar gzip إلى المجلد system_dlkm_staging.

void flattenSystemDlkm(ITestDevice device, File systemDlkmStagingDir)

سطِّح دليل الإعداد المؤقت system_dlkm لكي تكون جميع وحدات النواة مباشرةً ضمن /lib/modules.

String[] getDeviceKernelVersion(ITestDevice device)

الحصول على إصدار نواة الجهاز من الجهاز قبل التثبيت

IHostOptions getHostOptions()

الحصول على مرجع إلى IHostOptions

String[] getKernelVersionFromImage(File image)

يستخرج إصدار النواة من ملفات صور boot/vendor_boot/system_dlkm/vendor_dlkm.

File getRequestedFile(ITestDevice device, String requestedFileName, File sourceFile, File tmpDir)

الحصول على الملف المطلوب من الملف المصدر (ملف مضغوط أو مجلد) حسب اسم الملف المطلوب

IRunUtil getRunUtil()

احصل على مثيل IRunUtil لاستخدامه.

String[] parseKernelVersion(String source, String kernelVersionString)
void validateGkiBootImg(ITestDevice device, IBuildInfo buildInfo, File tmpDir)

من المتوقّع التحقّق من صحة صورة التشغيل GKI.

void validateKernelCompatibility(String imageName, String[] imageVersion, String[] bootVersion, ITestDevice device)
void validateKernelVersion(ITestDevice device, IBuildInfo buildInfo, File tmpDir)

تحقَّق من أنّ إصدارات النواة في الصور هي الإصدارات المتوقّعة.

طُرق وضع التصميم العامة

GkiDeviceFlashPreparer

public GkiDeviceFlashPreparer ()

الإجراءات العامة

setUp

public void setUp (TestInformation testInfo)

نفِّذ عملية إعداد الاستهداف للاختبار.

المعلَمات
testInfo TestInformation: TestInformation عملية الاستدعاء

عمليات الطرح
BuildError
DeviceNotAvailableException
TargetSetupError

validateGkiBootImg

public void validateGkiBootImg (ITestDevice device, 
                IBuildInfo buildInfo)

من المتوقّع التحقّق من صحة صورة التشغيل GKI. (قديم. يُرجى الاتصال باستخدام tmpDir المتوفّر)

المعلَمات
device ITestDevice: ITestDevice

buildInfo IBuildInfo: IBuildInfo معلومات الإصدار

عمليات الطرح
TargetSetupError في حال عدم توفّر ملف boot.img صالح في GKI

طُرق محمية

addHashFooter

protected void addHashFooter (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

من المتوقّع التحقّق من صحة صورة التشغيل GKI. طرح استثناء في حال عدم توفّر ملف boot.img صالح

المعلَمات
device ITestDevice: ITestDevice

buildInfo IBuildInfo: IBuildInfo معلومات الإصدار

tmpDir File: الدليل المؤقت File

عمليات الطرح
TargetSetupError في حال عدم توفّر ملف boot.img صالح في GKI
DeviceNotAvailableException

buildGkiSystemDlkmImg

protected void buildGkiSystemDlkmImg (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

إنشاء صورة GKI system_dlkm إذا تم توفير أرشيف system_dlkm

المعلَمات
device ITestDevice: ITestDevice

buildInfo IBuildInfo: IBuildInfo معلومات الإصدار

tmpDir File: الدليل المؤقت File

عمليات الطرح
TargetSetupError إذا حدث خطأ أثناء إنشاء ملف الصورة

extractSystemDlkmTarGzip

protected File extractSystemDlkmTarGzip (File systemDlkmArchive)

يستخرج ملف system_dlkm tar gzip إلى المجلد system_dlkm_staging. هذه الدالة هي برنامج تضمين حول ERROR(/TarUtil.extractTarGzipToTemp) من أجل إنشاء رمز بديل لعملية فك الضغط بهدف إجراء اختبار الوحدات.

المعلَمات
systemDlkmArchive File: ملف tar gzip الخاص بـ system_dlkm الذي يحتوي على وحدات GKI.

المرتجعات
File ملف يحتوي على محتوى system_dlkm tar gzip.

عمليات الطرح
java.io.IOException
IOException

flattenSystemDlkm

protected void flattenSystemDlkm (ITestDevice device, 
                File systemDlkmStagingDir)

سطِّح دليل الإعداد المؤقت system_dlkm لكي تكون جميع وحدات النواة مباشرةً ضمن /lib/modules. هذا الإجراء ضروري لمطابقة تنسيق ملف system_dlkm المتوقّع لإصدارات المنصة التي تقل عن 0x0A.

المعلَمات
device ITestDevice: ITestDevice

systemDlkmStagingDir File: دليل التخزين المؤقت system_dlkm File

عمليات الطرح
IOException أو TargetSetupError إذا حدث خطأ في تسوية system_dlkm.
TargetSetupError

getDeviceKernelVersion

protected String[] getDeviceKernelVersion (ITestDevice device)

الحصول على إصدار نواة الجهاز من الجهاز قبل التثبيت

المعلَمات
device ITestDevice: ITestDevice للحصول على إصدار النواة منه.

المرتجعات
String[] ERROR(/String[]) يحتوي على معلومات إصدار النواة التي تم تحليلها: [kernelVersion, patchLevel, pageSize]. تعرِض قيمة فارغة إذا تعذّر تحليل سلسلة الإصدار.2

عمليات الطرح
DeviceNotAvailableException

getHostOptions

protected IHostOptions getHostOptions ()

الحصول على مرجع إلى IHostOptions

المرتجعات
IHostOptions IHostOptions المطلوب استخدامه

getKernelVersionFromImage

protected String[] getKernelVersionFromImage (File image)

يستخرج إصدار النواة من ملفات صور boot/vendor_boot/system_dlkm/vendor_dlkm. تقرأ هذه الطريقة ملف صورة boot/vendor_boot/system_dlkm/vendor_dlkm وتبحث عن نمط معيّن في سلاسل إصدارات نواة Android. ثم يحلّل السلسلة التي تم العثور عليها لاستخراج إصدار النواة بتنسيق موحّد.

المعلَمات
image File: File لملف صورة التشغيل (مثل boot.img).

المرتجعات
String[] ERROR(/String[]) يحتوي على معلومات إصدار النواة التي تم تحليلها: [kernelVersion, patchLevel, pageSize]. تعرِض قيمة فارغة إذا تعذّر تحليل سلسلة الإصدار.

getRequestedFile

protected File getRequestedFile (ITestDevice device, 
                String requestedFileName, 
                File sourceFile, 
                File tmpDir)

الحصول على الملف المطلوب من الملف المصدر (ملف مضغوط أو مجلد) حسب اسم الملف المطلوب

يمكن أن يكون ملف المصدر المقدَّم ملف zip. سيتم فك ضغط الملف إلى دليل مؤقت والعثور على الملف المطلوب حسب اسم الملف المقدَّم.

يمكن أن يكون ملف المصدر المقدَّم مجلد ملفات. ستعثر الطريقة على الملف المطلوب من خلال اسم الملف المقدَّم.

المعلَمات
device ITestDevice: ITestDevice

requestedFileName String: سلسلة اسم الملف المطلوب

sourceFile File: ملف المصدر

tmpDir File

المرتجعات
File الملف الذي يحدّده اسم الملف المطلوب

عمليات الطرح
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

getRunUtil

protected IRunUtil getRunUtil ()

احصل على مثيل IRunUtil لاستخدامه.

المرتجعات
IRunUtil IRunUtil المطلوب استخدامه

parseKernelVersion

protected String[] parseKernelVersion (String source, 
                String kernelVersionString)

المعلَمات
source String

kernelVersionString String

المرتجعات
String[]

validateGkiBootImg

protected void validateGkiBootImg (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

من المتوقّع التحقّق من صحة صورة التشغيل GKI. طرح استثناء في حال عدم توفّر ملف boot.img صالح

المعلَمات
device ITestDevice: ITestDevice

buildInfo IBuildInfo: IBuildInfo معلومات الإصدار

tmpDir File: الدليل المؤقت File

عمليات الطرح
TargetSetupError في حال عدم توفّر ملف boot.img صالح في GKI

validateKernelCompatibility

protected void validateKernelCompatibility (String imageName, 
                String[] imageVersion, 
                String[] bootVersion, 
                ITestDevice device)

المعلَمات
imageName String

imageVersion String

bootVersion String

device ITestDevice

عمليات الطرح
TargetSetupError

validateKernelVersion

protected void validateKernelVersion (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

تحقَّق من أنّ إصدارات النواة في الصور هي الإصدارات المتوقّعة. طرح استثناء إذا لم يكن صالحًا

المعلَمات
device ITestDevice: ITestDevice

buildInfo IBuildInfo: IBuildInfo معلومات الإصدار

tmpDir File: الدليل المؤقت File

عمليات الطرح
TargetSetupError في حال عدم توفّر ملف boot.img صالح في GKI
DeviceNotAvailableException