Mô-đun ModuleMetadata chứa siêu dữ liệu về danh sách các mô-đun trên thiết bị cụ thể. Siêu dữ liệu được phân tích cú pháp và lưu vào bộ nhớ đệm ngay khi máy chủ hệ thống khởi động.
Các thay đổi trong Android 10
APK ModuleMetadata chứa ModuleInfoProvider
, trong đó
triển khai getModuleInfo
và getInstalledModules
từ API của PackageManager. Các phương thức này được sao lưu
bằng siêu dữ liệu XML được phân tích cú pháp từ gói nhà cung cấp siêu dữ liệu mô-đun. Gói hàng
tên của gói siêu dữ liệu mô-đun được lưu trữ trong
Giá trị cấu hình config_defaultModuleMetadataProvider
.
Trình cung cấp siêu dữ liệu của mô-đun phải chứa <metadata>
cho thẻ <application>
của trang web đó. Mục siêu dữ liệu phải chứa một khoá duy nhất (android.content.pm.MODULE_METADATA
) có giá trị là tham chiếu đến một tài nguyên XML chứa siêu dữ liệu về danh sách các mô-đun trên một thiết bị nhất định.
Định dạng gói
Mô-đun ModuleMetadata (com.android.modulemetadata
) được phân phối dưới dạng tệp APK.
Phần tử siêu dữ liệu
Tài liệu XML phải bao gồm một phần tử <module-metadata>
cấp cao nhất với một hoặc nhiều phần tử con. Mỗi phần tử con là một <module>
chứa các thuộc tính sau:
name
là tham chiếu tài nguyên đến tên gói hiển thị cho người dùng. Bản đồ đếnModuleInfo#getName
.packageName
là tên gói của mô-đun. Bản đồ đếnModuleInfo#getPackageName
.isHidden
cho biết liệu mô-đun có bị ẩn hay không. Bản đồ đếnModuleInfo#isHidden</code>.
Ví dụ:
<module-metadata>
<module name="@string/resource" packageName="package_name" isHidden="false|true">
<module .... >
</module-metadata>