โมดูล ModuleMetadata มีข้อมูลเมตาเกี่ยวกับรายการโมดูลใน อุปกรณ์ที่กำหนด ระบบจะแยกวิเคราะห์และแคชข้อมูลเมตาทันทีที่เซิร์ฟเวอร์ระบบ เริ่ม
การเปลี่ยนแปลงใน Android 10
APK ของ ModuleMetadata มี ModuleInfoProvider
ซึ่งใช้เมธอด getModuleInfo
และ getInstalledModules
จาก API ของ PackageManager วิธีการเหล่านี้ได้รับการสนับสนุนจากข้อมูลเมตา XML ที่แยกวิเคราะห์จากแพ็กเกจผู้ให้บริการข้อมูลเมตาของโมดูล แพ็กเกจ
สำหรับแพ็กเกจข้อมูลเมตาของโมดูลจะเก็บอยู่ใน
ค่ากำหนด config_defaultModuleMetadataProvider
ผู้ให้บริการข้อมูลเมตาของโมดูลต้องมี<metadata>
รายการสําหรับแท็ก <application>
รายการข้อมูลเมตาต้อง
มีคีย์เดียว (android.content.pm.MODULE_METADATA
) ซึ่งมี
value คือการอ้างอิงทรัพยากร XML ที่มีข้อมูลเมตาเกี่ยวกับรายการ
บนอุปกรณ์ที่กำหนด
รูปแบบแพ็กเกจ
นำส่งโมดูล ModuleMetadata (com.android.modulemetadata
) แล้ว
เป็นไฟล์ APK
องค์ประกอบข้อมูลเมตา
เอกสาร XML ต้องมีองค์ประกอบ <module-metadata>
ระดับบนสุดรายการเดียวที่มีองค์ประกอบย่อยอย่างน้อย 1 รายการ องค์ประกอบย่อยแต่ละรายการคือองค์ประกอบ <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>