מטא-נתונים

המודול 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 הוא שם החבילה של המודול. מפות Google לModuleInfo#getPackageName.
  • isHidden מציין אם המודול מוסתר. מפות אל ModuleInfo#isHidden</code>.

דוגמה:

<module-metadata>
<module name="@string/resource" packageName="package_name" isHidden="false|true">
<module .... >
</module-metadata>