מטא-נתונים

המודול 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>