โมดูลโมดูล

โมดูล 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> ระดับบนสุดรายการเดียวที่มีองค์ประกอบย่อยอย่างน้อย 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>