Kể từ Android 14, trình cài đặt gói Android có thể nhập siêu dữ liệu về một ứng dụng (chẳng hạn như các biện pháp đảm bảo an toàn dữ liệu) để sử dụng trong các tính năng của nền tảng Android như dưới dạng lời nhắc Quyền truy cập thông tin vị trí đã cập nhật.
Có hai cách để cung cấp siêu dữ liệu này:
Đối với một ứng dụng được tải trước trên hình ảnh hệ thống, nhà sản xuất thiết bị có thể cung cấp siêu dữ liệu về ứng dụng bằng cách thêm tệp XML vào ảnh hệ thống với gói bền vững được mô tả dưới đây.
Đối với các ứng dụng đang được cài đặt hoặc cập nhật, để chỉ định siêu dữ liệu này, ứng dụng trình cài đặt nên chuyển đối tượng
PersistableBundlevàosetAppMetadata().
Gói ổn định cấp cao nhất gồm các cặp khoá/giá trị sau đây. Trừ trường hợp có quy định khác, mỗi khoá này đều không bắt buộc.
version(bắt buộc)- Số phiên bản của định dạng siêu dữ liệu ứng dụng. Dùng
2làm giá trị cho thao tác này phiên bản hiện tại và loại làlong. Nếu khoá hoặc loại nội dung mong muốn Nếu cóAppMetadatathay đổi, Android sẽ thay đổi số phiên bản. safety_labels- Đối tượng
PersistableBundlechỉ định nhãn an toàn của ứng dụng. system_app_safety_label- Đối tượng
PersistableBundlechỉ định system-app-safety-label của ứng dụng. Đối với các ứng dụng hoạt động như một dịch vụ hệ thống, Góisystem_app_safety_labelđược dùng thay cho góisafety_labels. transparency_info- Đối tượng
PersistableBundlechỉ định thông tin minh bạch của ứng dụng.
Định dạng nhãn an toàn
Gói safety_labels chứa các cặp khoá/giá trị sau:
version(bắt buộc)- Số phiên bản của định dạng nhãn an toàn. Sử dụng
1làm giá trị cho phiên bản hiện tại này vàlonglàm loại. data_labels- Đối tượng
PersistableBundlechỉ định dữ liệu mà ứng dụng thu thập và chia sẻ. security_labels- Đối tượng
PersistableBundlechỉ định hoạt động xoá dữ liệu và mã hoá. third_party_verification- Đối tượng
PersistableBundlechỉ định cách bên thứ ba xác minh các biện pháp đảm bảo an toàn dữ liệu đối với ứng dụng.
Dữ liệu được thu thập và chia sẻ
Gói data_labels chứa các cặp khoá/giá trị sau:
data_collected- Đối tượng
PersistableBundlechỉ định kiểu dữ liệu mà ứng dụng thu thập. data_shared- Đối tượng
PersistableBundlechỉ định kiểu dữ liệu mà ứng dụng chia sẻ.
Danh mục dữ liệu
Cả hai khoá data_collected và data_shared đều sử dụng định dạng gói data_category, trong đó có các cặp khoá/giá trị như trong danh sách sau. Mỗi khoá liên kết với một đối tượng PersistableBundle chỉ định các kiểu dữ liệu cho một danh mục cụ thể.
personalfinanciallocationemail_text_messagephoto_videoaudiostoragehealth_fitnesscontactscalendaridentifiersapp_performanceactions_in_appsearch_and_browsing
Loại dữ liệu
Mỗi khoá trong gói data_category liên kết với một gói khác sử dụng định dạng data_type. Các khoá mà bạn chỉ định ở định dạng data_type phụ thuộc vào nội dung bạn chọn cho data_category.
Cặp khoá/giá trị data_type có thể xuất hiện trong các danh sách sau. Chiến lược phát hành đĩa đơn
cho mỗi khoá là một đối tượng PersistableBundle mô tả
các phương pháp sử dụng dữ liệu của ứng dụng đối với loại dữ liệu cụ thể đó. Một số kiểu dữ liệu chỉ sử dụng một khoá.
Cá nhân
nameemail_addressphysical_addressphone_numberrace_ethnicitypolitical_or_religious_beliefssexual_orientation_or_gender_identitypersonal_identifiersother
Tài chính
card_bank_accountpurchase_historycredit_scoreother
Vị trí
approx_locationprecise_location
Email và tin nhắn văn bản
emailstext_messagesother
Ảnh và video
photosvideos
Âm thanh
sound_recordingsmusic_filesother
Bộ nhớ
files_docs
Sức khoẻ/Thể dục
healthfitness
Danh bạ
contacts
Lịch
calendar
Giá trị nhận dạng
other
Hiệu suất của ứng dụng
crash_logsperformance_diagnosticsother
Thao tác trong ứng dụng
user_interactionin_app_search_historyinstalled_appsuser_generated_contentother
Tìm kiếm và duyệt web
web_browsing_history
Sử dụng dữ liệu
Gói data_usage chứa các cặp khoá/giá trị sau:
purposes(bắt buộc)-
Một mảng số nguyên thể hiện những lý do cụ thể cho việc thu thập hoặc chia sẻ dữ liệu và sử dụng
PersistableBundleputIntArray. Cần có ít nhất một trong các mục đích được xác định bên dưới cho mỗi gói.1: PURPOSE_APP_FUNCTIONALITY2: PURPOSE_ANALYTICS3: PURPOSE_DEVELOPER_COMMUNICATIONS4: PURPOSE_FRAUD_PREVENTION_SECURITY5: PURPOSE_ADVERTISING6: PURPOSE_PERSONALIZATION7: PURPOSE_ACCOUNT_MANAGEMENT
is_collection_optional-
Giá trị boolean Chỉ định xem người dùng có thể chọn tham gia hay không tham gia, thu thập dữ liệu.
Lưu ý: Chỉ đặt giá trị này cho
data_categorygói đại diện cho hoạt động thu thập dữ liệu; không đặt để chia sẻ dữ liệu. ephemeral-
Giá trị boolean Chỉ định xem ứng dụng có xử lý dữ liệu hay không phía máy chủ chỉ trong bộ nhớ, không phải trên ổ đĩa và ứng dụng vẫn giữ lại dữ liệu không còn quá mức cần thiết để phục vụ cho quá trình xử lý dữ liệu cụ thể của bạn.
Lưu ý: Chỉ đặt giá trị này cho
data_categorygói đại diện cho hoạt động thu thập dữ liệu; không đặt để chia sẻ dữ liệu.
Phương pháp xoá và mã hoá dữ liệu
Gói security_labels chứa các cặp khoá/giá trị đại diện cho
phương pháp xoá và mã hoá dữ liệu:
is_data_deletable- Giá trị boolean Chỉ định xem ứng dụng có cho phép người dùng yêu cầu hay không để ứng dụng xoá dữ liệu người dùng của họ.
is_data_encrypted- Giá trị boolean Chỉ định xem có phải tất cả dữ liệu người dùng mà ứng dụng thu thập đều không được mã hoá trong quá trình truyền dữ liệu.
Xác minh của bên thứ ba
Gói third_party_verification bao gồm một khoá duy nhất là url. URL này,
được biểu thị dưới dạng giá trị chuỗi, chỉ định trang web của bên thứ ba dùng cho
xác minh thông tin an toàn dữ liệu của ứng dụng.
Định dạng nhãn an toàn của dịch vụ hệ thống
Đối với các ứng dụng hoạt động như một dịch vụ hệ thống, gói system_app_safety_label
được dùng thay cho gói safety_labels và chứa nội dung sau
cặp khoá/giá trị:
url (bắt buộc)
- URL trỏ đến một trang có chứa thông tin an toàn cho ứng dụng hoạt động như một dịch vụ hệ thống.
- Sử dụng
stringlàm loại. - Nếu URL đó chưa được cung cấp thì URL chính sách quyền riêng tư sẽ được sử dụng làm một dự phòng.
- Lưu ý: Cửa hàng Google Play sử dụng
privacy_policylàm phương án dự phòng.
Định dạng thông tin về tính minh bạch
Gói transparency_info chứa các cặp khoá/giá trị sau:
developer_info- Đối tượng
PersistableBundlechỉ định thông tin về ứng dụng nhà phát triển. app_info- Đối tượng
PersistableBundlechỉ định thông tin về ứng dụng.
Thông tin của nhà phát triển
Gói developer_info chứa các cặp khoá/giá trị sau:
developer_#- Đối tượng
PersistableBundlexác định nhà phát triển. Chiến lược phát hành đĩa đơndeveloper_infochứa một hoặc nhiềudeveloper_#, trong đó#là một số nguyên. Ví dụ:developer_0,developer_1,developer_2, v.v.
Nhà phát triển
Gói developer_# chứa khoá/giá trị sau
cặp:
name(bắt buộc)- Một chuỗi cho biết tên của nhà phát triển.
email(bắt buộc)- Một chuỗi cho biết địa chỉ email của nhà phát triển.
address(bắt buộc)- Một chuỗi cho biết địa chỉ gửi thư của nhà phát triển.
country_region(bắt buộc)- Một chuỗi cho biết quốc gia hoặc khu vực của nhà phát triển.
website- Một chuỗi nêu rõ trang web của nhà phát triển.
app_registry
- Một chuỗi cho biết cửa hàng hoặc sổ đăng ký của nhà phát triển.
- Nếu nhà phát triển cũng được đăng ký trên cửa hàng hoặc sổ đăng ký khác, giá trị phải là tên gói Android của cửa hàng hoặc URL của sổ đăng ký.
- Bạn được phép nhập nhiều mục cho nhiều cửa hàng.
- Đối với Google Play, hãy sử dụng
com.android.vending. - Nếu nhà phát triển là một SDK có trong Chỉ mục SDK của Google Play, hãy bỏ qua .
- Nếu nhà phát triển chưa đăng ký trên bất kỳ cửa hàng ứng dụng hoặc sổ đăng ký nào, hãy bỏ qua trường này .
app_registry_id
- Một chuỗi cho biết mã nhận dạng của nhà phát triển cho
app_registryđã nêu. - Nếu nhà phát triển cũng được đăng ký trên cửa hàng hoặc sổ đăng ký khác, giá trị phải là thông tin nhận dạng trong sổ đăng ký hoặc cửa hàng của họ.
- Bạn có thể nhập nhiều mục cho nhiều cửa hàng.
- Đối với các nhà phát triển đã đăng ký với Google Play, giá trị này phải là URL của trang dành cho nhà phát triển (ví dụ: https://play.google.com/store/apps/dev?id=5700313618786177705 là URL dành cho nhà phát triển Google LLC).
- Nếu nhà phát triển là nhà phát triển SDK có trong Chỉ mục SDK của Google Play, hãy sử dụng URL Chỉ mục SDK của Google Play của SDK đó (ví dụ: https://play.google.com/sdks/details/com-google-android-gms-play-services-ads là URL Chỉ mục SDK của Google Play của SDK Google Mobile Ads (GMA)).
- Nếu nhà phát triển đã đăng ký trên một cửa hàng hoặc sổ đăng ký khác, tức là một cửa hàng ứng dụng Có thể cung cấp URL hoặc giá trị nhận dạng khác.
- Nếu nhà phát triển chưa đăng ký trên bất kỳ cửa hàng ứng dụng nào, thì thuộc tính này có thể là đã bỏ qua.
Thông tin ứng dụng
Gói app_info chứa các cặp khoá/giá trị sau:
title(bắt buộc)- Một chuỗi cho biết tiêu đề của ứng dụng.
description(bắt buộc)- Một chuỗi nêu rõ mục đích của ứng dụng trong một khối văn bản mà con người đọc được bằng tiếng Anh.
contains_ads(bắt buộc)- Một boolean khai báo liệu ứng dụng có hiển thị quảng cáo hay không.
privacy_policy (bắt buộc)
- Chuỗi chứa thuộc tính URL liên kết đến chính sách quyền riêng tư thông tin chi tiết về cách Google xử lý dữ liệu người dùng.
- Đây là yêu cầu bắt buộc đối với các ứng dụng truyền dữ liệu người dùng.
- Nếu ứng dụng không chứa đường liên kết này, thì hệ thống sẽ xem như ứng dụng không xử lý dữ liệu người dùng.
category(bắt buộc)Một chuỗi chứa một trong các danh mục ứng dụng sau đây mô tả chính xác nhất mục đích chính của ứng dụng:
- Android (chỉ dành cho thành phần AOSP)*
- Nghệ thuật và thiết kế
- Ô tô và xe cộ
- Sản phẩm làm đẹp
- Sách và tài liệu tham khảo
- Doanh nghiệp
- Truyện tranh
- Giao tiếp
- Hẹn hò
- Giáo dục
- Giải trí
- Sự kiện
- Tài chính
- Đồ ăn và đồ uống
- Trò chơi
- Sức khoẻ và thể chất
- Nhà cửa
- Trình cài đặt (chỉ dành cho cửa hàng ứng dụng hoặc trình cài đặt khác)*
- Thư viện và bản minh họa
- Lối sống
- Maps và tính năng đi theo chỉ dẫn
- Y tế
- Nhạc và âm thanh
- Tin tức và tạp chí
- Nuôi dạy con
- Cá nhân hoá
- Nhiếp ảnh
- Năng suất
- Bảo mật*
- Mua sắm
- Mạng xã hội
- Thể thao
- Công cụ
- Du lịch và địa phương
- Trình cập nhật (chỉ dành cho ứng dụng cập nhật mặc định qua mạng không dây (OTA) của thiết bị)*
- Trình phát và chỉnh sửa video
- Thời tiết
contact_info- Đối tượng
PersistableBundlebao gồm thông tin liên hệ của ứng dụng (bên dưới).
Thông tin liên hệ
Gói contact_info chứa các cặp khoá/giá trị sau:
email(bắt buộc)- Một chuỗi cho biết địa chỉ email của ứng dụng.
website- Một chuỗi nêu rõ trang web của ứng dụng.