מטא-נתונים

המודול ModuleMetadata מכיל מטא-נתונים על רשימת המודולים במכשיר נתון. המטא-נתונים מנותחים ונשמרים במטמון ברגע ששרת המערכת מתחיל.

שינויים ב-Android 10

ה-APK של ModuleMetadata מכיל ModuleInfoProvider, מטמיעים את getModuleInfo ואת getInstalledModules מ-API של 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>