تحتوي وحدة ModuleMetadata على بيانات وصفية حول قائمة الوحدات في على جهاز محدد. يتم تحليل البيانات الوصفية وتخزينها مؤقتًا بمجرّد أن يشغّل خادم النظام تبدأ.
التغييرات في Android 10
يحتوي ملف APK الخاص بـ ModuleMetadata على ModuleInfoProvider
، الذي
ينفِّذ الطريقتَين getModuleInfo
وgetInstalledModules
من واجهة برمجة التطبيقات PackageManager. تستند هذه الطرق
إلى بيانات وصفية بتنسيق XML تم تحليلها من حزمة موفِّر البيانات الوصفية للوحدة. الطرد
اسم حزمة البيانات الوصفية للوحدة في مكتبة
config_defaultModuleMetadataProvider
.
يجب أن يحتوي موفِّر البيانات الوصفية للوحدة على <metadata>
الإدخال لعلامة <application>
الخاصة به. يجب أن يحتوي إدخال البيانات الوصفية
على مفتاح واحد (android.content.pm.MODULE_METADATA
) تكون
قيمته مرجعًا إلى مورد XML يحتوي على بيانات وصفية عن قائمة
الوحدات على جهاز معيّن.
تنسيق الحزمة
تم تسليم وحدة ModuleMetadata (com.android.modulemetadata
).
كملف APK.
عناصر البيانات الوصفية
يجب أن يتألّف مستند XML من عنصر <module-metadata>
واحد من المستوى الأعلى يتضمّن عنصرًا فرعيًا واحدًا أو أكثر. كل عنصر ثانوي هو عنصر <module>
يحتوي على السمات التالية:
name
هو مرجع مورد لاسم حزمة مرئي للمستخدم. يتم ربطها بـModuleInfo#getName
.packageName
هو اسم حزمة الوحدة. يتمّ ربطها بحسابModuleInfo#getPackageName
.- يشير الرمز
isHidden
إلى ما إذا كانت الوحدة مخفية. تؤدي إلىModuleInfo#isHidden</code>.
مثال:
<module-metadata>
<module name="@string/resource" packageName="package_name" isHidden="false|true">
<module .... >
</module-metadata>