بدءًا من الإصدار 14 من نظام Android، يمكن لأداة تثبيت حزمة Android نقل بيانات وصفية حول أحد التطبيقات، مثل ممارسات أمان البيانات، لاستخدامها في ميزات نظام Android الأساسي، مثل باعتباره الطلب المحدّث لإذن تحديد الموقع الجغرافي.
هناك طريقتان لتقديم هذه البيانات الوصفية:
بالنسبة إلى أحد التطبيقات التي يتم تحميلها مسبقًا على صورة النظام، يمكن للشركات المصنّعة للأجهزة إجراء ما يلي: توفير بيانات وصفية حول التطبيق من خلال إضافة ملف XML إلى صورة النظام مع الحزمة الدائمة الموضحة أدناه.
بالنسبة إلى التطبيقات التي يتم تثبيتها أو تحديثها، لتحديد هذه البيانات الوصفية، يجب أن تمرِّر مُثبّتي التطبيقات عنصر
PersistableBundleإلى الأسلوبsetAppMetadata().
تتألف الحِزمة القابلة للحفظ على مستوى أعلى من أزواج المفاتيح/القيم التالية. يكون كل مفتاح اختياريًا، ما لم يُذكر خلاف ذلك.
version(مطلوب)- رقم إصدار تنسيق بيانات التطبيق الوصفية استخدام
2كقيمة لهذه السمة على الإصدار الحالي وlongكنوع. إذا كانت المفاتيح أو أنواع المحتوى المتوقعةAppMetadata، سيغيّر Android رقم الإصدار. safety_labels- عنصر
PersistableBundleيحدد safety-labels الخاصة بالتطبيق. system_app_safety_label- عنصر
PersistableBundleيحدّد system-app-safety-label للتطبيق بالنسبة إلى التطبيقات التي تعمل كخدمة نظام، يجب تنفيذ ما يلي: يتم استخدام حزمةsystem_app_safety_labelبدلاً من حزمةsafety_labels. transparency_info- عنصر
PersistableBundleيحدِّد معلومات الشفافية في التطبيق
تنسيق تصنيفات الأمان
تحتوي حزمة safety_labels على أزواج المفتاح/القيم التالية:
version(مطلوب)- رقم إصدار تنسيق تصنيفات الأمان استخدام
1كقيمة لهذه السمة النسخة الحالية وlongكنوع. data_labels- عنصر
PersistableBundleيحدد البيانات التي يجمعها التطبيق ومشاركتها. security_labels- عنصر
PersistableBundleيحدد حذف بيانات التطبيق ممارسات التشفير. third_party_verification- عنصر
PersistableBundleيحدد طريقة أمان البيانات في التطبيق أن تكون جهة خارجية تتحقّق من صحة الأصول
البيانات التي يتم جمعها ومشاركتها
تحتوي حزمة data_labels على أزواج المفتاح/القيمة التالية:
data_collected- عنصر
PersistableBundleيحدد أنواع البيانات التي يوفرها التطبيق البيانات التي يجمعها. data_shared- عنصر
PersistableBundleيحدد أنواع البيانات التي يوفرها التطبيق
فئات البيانات
يستخدم كل من المفتاحَين data_collected وdata_shared حزمة "data_category".
الذي يحتوي على أزواج المفتاح/القيمة المعروضة في القائمة التالية. يتم ربط كل مفتاح
بعنصر PersistableBundle يحدّد أنواع البيانات لفئة
معيّنة.
personalfinanciallocationemail_text_messagephoto_videoaudiostoragehealth_fitnesscontactscalendaridentifiersapp_performanceactions_in_appsearch_and_browsing
أنواع البيانات
يرتبط كل مفتاح في الحزمة data_category بحزمة مختلفة تستخدم
تنسيق data_type تعتمد المفاتيح التي تحدّدها في تنسيق data_type على ما تختاره لـ data_category.
يظهر data_type زوج المفتاح/القيمة المحتملة في القوائم التالية. قيمة كل مفتاح من هذه المفاتيح هي عنصر PersistableBundle يصف
ممارسات استخدام البيانات في التطبيق لهذا النوع المحدّد من البيانات. بعض أنواع البيانات
تستخدم مفتاحًا واحدًا فقط.
شخصي
nameemail_addressphysical_addressphone_numberrace_ethnicitypolitical_or_religious_beliefssexual_orientation_or_gender_identitypersonal_identifiersother
المسائل المالية
card_bank_accountpurchase_historycredit_scoreother
الموقع الجغرافي
approx_locationprecise_location
الرسائل الإلكترونية والرسائل النصية
emailstext_messagesother
الصور والفيديوهات
photosvideos
الصوت
sound_recordingsmusic_filesother
مساحة التخزين
files_docs
اللياقة البدنية
healthfitness
جهات الاتصال
contacts
تقويم Google
calendar
المعرّفات
other
أداء التطبيق
crash_logsperformance_diagnosticsother
الإجراءات في التطبيق
user_interactionin_app_search_historyinstalled_appsuser_generated_contentother
البحث والتصفُّح
web_browsing_history
استخدام البيانات
تحتوي حزمة data_usage على أزواج المفتاح/القيمة التالية:
purposes(مطلوب)-
يشير هذا المصطلح إلى مصفوفة من الأعداد الصحيحة تمثّل أسبابًا محدّدة لجمع البيانات أو يشارك البيانات ويستخدم "
PersistableBundle"putIntArray. يجب تقديم أحد الأغراض المحدّدة أدناه على الأقل لكل حزمة.1: PURPOSE_APP_FUNCTIONALITY2: PURPOSE_ANALYTICS3: PURPOSE_ موضوع_COMMUNICATIONS4: PURPOSE_FRAUD_PREVENTION_SECURITY5: PURPOSE_ADVERTISING6: PURPOSE_PERSONALIZATION7: PURPOSE_ACCOUNT_MANAGEMENT
is_collection_optional-
قيمة منطقية. يُحدِّد ما إذا كان يمكن للمستخدمين الموافقة على المشاركة أو إيقافها. جمع البيانات.
ملاحظة: اضبط هذه القيمة فقط في حِزم
data_categoryالتي تمثّل جمع البيانات لم يتم الضبط لمشاركة البيانات. ephemeral-
قيمة منطقية. يحدِّد ما إذا كان التطبيق يعالج البيانات جانب الخادم فقط في الذاكرة وليس على القرص، وما إذا كان يحتفظ بالبيانات لفترة لا تزيد عن المدة اللازمة لمعالجة طلب معالجة البيانات المحدَّد.
ملاحظة: لا تضبط هذه القيمة إلا لحزمات
data_categoryالتي تمثّل جمع البيانات، ولا تضبطها لمشاركة البيانات.
ممارسات حذف البيانات والتشفير
تحتوي حِزمة security_labels على أزواج المفتاح/القيمة التي تُمثل
ممارسات حذف البيانات والتشفير:
is_data_deletable- قيمة منطقية تحدِّد هذه السياسة ما إذا كان التطبيق يسمح للمستخدم بتقديم طلب. التطبيق لحذف بيانات المستخدمين.
is_data_encrypted- قيمة منطقية يحدِّد ما إذا كان يتم تشفير جميع بيانات المستخدمين التي يجمعها التطبيق أثناء نقلها أم لا.
إثبات هوية وأهلية الجهة الخارجية
تتألف حزمة third_party_verification من مفتاح واحد، url. عنوان URL هذا
يتم تمثيلها كقيمة سلسلة، تحدد موقع الويب التابع للجهة الخارجية
والتحقق من معلومات أمان البيانات الخاصة بالتطبيق
تنسيق تصنيفات أمان خدمة النظام
بالنسبة إلى التطبيقات التي تعمل باعتبارها خدمة نظام، يجب استخدام حزمة system_app_safety_label
تُستخدم بدلاً من حزمة safety_labels وتحتوي على ما يلي
أزواج المفتاح/القيم:
url (مطلوب)
- عنوان URL الذي يشير إلى صفحة تحتوي على معلومات الأمان الخاصة بالتطبيق والعمل كخدمة نظام.
- استخدِم
stringكنوع. - وإذا لم يتم تقديمه، يجب استخدام عنوان URL لسياسة الخصوصية كأحد البدائل.
- ملاحظة: يستخدم متجر Google Play
privacy_policyكإجراء احتياطي.
تنسيق معلومات الشفافية
تحتوي حزمة transparency_info على أزواج المفتاح/القيم التالية:
developer_info- عنصر
PersistableBundleيحدد معلومات عن التطبيق . app_info- عنصر
PersistableBundleيحدد معلومات عن التطبيق.
معلومات المطوّر
تحتوي حزمة developer_info على أزواج المفتاح/القيمة التالية:
developer_#- عنصر
PersistableBundleيعرّف مطوّر البرامج. تشير رسالة الأشكال البيانيةdeveloper_infoيحتوي علىdeveloper_#واحد أو أكثر، حيث تكون#عددًا صحيحًا. على سبيل المثالdeveloper_0،developer_1وdeveloper_2وما إلى ذلك
مطور التطبيق
تحتوي حِزمة developer_# على أزواج المفتاح/القيمة التالية:
name(مطلوب)- سلسلة توضّح اسم المطوّر
email(مطلوب)- سلسلة توضّح عنوان البريد الإلكتروني للمطوّر
address(مطلوب)- سلسلة توضّح العنوان البريدي للمطوّر.
country_region(مطلوب)- سلسلة توضّح البلد أو منطقة المطوِّر
website- سلسلة توضّح الموقع الإلكتروني للمطوّر
app_registry
- سلسلة توضّح المتجر أو سجلّ المطوِّر
- إذا كان المطوّر مسجَّلاً أيضًا في متجر أو سجلّ آخر، سيتم يجب أن يكون اسم حزمة Android للمتجر أو عنوان URL للسجل.
- يُسمح بإدخالات متعددة لمتاجر متعددة.
- بالنسبة إلى Google Play، استخدِم
com.android.vending. - إذا كان المطوِّر هو حزمة SDK مدرَجة في أداة Google Play SDK Index، يجب حذف هذه الحزمة .
- إذا لم يكن المطوّر مسجّلاً في أي متجر تطبيقات أو قاعدة بيانات المسجّلين، يُرجى حذفه .
app_registry_id
- سلسلة توضّح رقم تعريف المطوّر لـ
app_registryالمذكور. - إذا كان المطوّر مسجّلاً أيضًا في متجر أو سجلّ آخر، يجب أن تكون القيمة هي هوية المتجر أو السجلّ.
- يُسمح بإدخالات متعددة لمتاجر متعددة.
- بالنسبة إلى المطوِّرين المسجَّلين في Google Play، يجب أن تكون هذه القيمة عنوان URL. صفحة المطوِّر (على سبيل المثال، https://play.google.com/store/apps/dev?id=5700313618786177705 هو العنوان عنوان URL لمطوّر Google LLC).
- إذا كان المطوِّر هو مطوِّر حِزم SDK مدرَج في أداة Google Play SDK Index، استخدِم عنوان URL الخاص بأداة Google Play SDK Index (على سبيل المثال، https://play.google.com/sdks/details/com-google-android-gms-play-services-ads هو عنوان URL لأداة Google Play SDK Index في حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة).
- إذا كان المطوِّر مسجَّلاً في متجر آخر أو قاعدة بيانات المسجّلين أخرى أو متجر تطبيقات يمكن توفير عنوان URL أو معرِّف آخر.
- إذا لم يكن مطوّر برامج مسجَّلاً في أي متجر تطبيقات، يمكن استخدام هذه السمة تم حذفها.
معلومات التطبيق
تحتوي حزمة app_info على أزواج المفتاح/القيمة التالية:
title(مطلوبة)- سلسلة توضح عنوان التطبيق.
description(مطلوب)- سلسلة توضّح الغرض من التطبيق في كائن نصي يمكن لشخص عادي قراءته باللغة الإنجليزية
contains_ads(مطلوب)- قيمة منطقية توضّح ما إذا كان التطبيق يعرض أي إعلانات.
privacy_policy (مطلوب)
- سلسلة تحتوي على سمة عنوان URL تؤدي إلى سياسة الخصوصية بالتفصيل كيفية التعامل مع بيانات المستخدم.
- مطلوب للتطبيقات التي تنقل بيانات المستخدمين.
- إذا لم يكن التطبيق يحتوي على هذا الرابط، من المفترض أنّ التطبيق لا يحتوي على معالجة بيانات المستخدم.
category(مطلوب)سلسلة تحتوي على إحدى فئات التطبيقات التالية التي تحقق أفضل الغرض الأساسي من التطبيق:
- Android (لمكوّن AOSP فقط)*
- الفن والتصميم
- السيارات والمركبات
- منتجات التجميل
- الكتب والمراجع
- النشاط التجاري
- كتب مصوّرة
- الاتصالات
- تعارف
- التعليم
- الترفيه
- الأحداث
- شؤون مالية
- مأكولات ومشروبات
- الألعاب
- الصحة واللياقة البدنية
- المنازل والبيوت
- أداة التثبيت (فقط لمتجر التطبيقات أو أداة تثبيت أخرى)*
- المكتبات والعروض التوضيحية
- أسلوب الحياة
- الخرائط والتنقُّل
- برنامج طبي
- الموسيقى والمقاطع الصوتية
- الأخبار والمجلات
- تربية أولاد
- التخصيص
- الصور الفوتوغرافية
- الإنتاجية
- الأمان*
- تسوّق
- تواصل اجتماعي
- رياضة
- الأدوات
- السفر والدليل المحلي
- أداة التحديث (لتطبيق التحديث التلقائي عبر شبكة غير سلكية (OTA) على الجهاز فقط)*
- مشغّلات الفيديو وأدوات تعديله
- الطقس
contact_info- عنصر
PersistableBundleيتضمّن معلومات الاتصال بالتطبيق (أدناه).
معلومات الاتصال
تحتوي حزمة contact_info على أزواج المفتاح/القيمة التالية:
email(مطلوب)- سلسلة توضح عنوان البريد الإلكتروني للتطبيق.
website- سلسلة توضح الموقع الإلكتروني للتطبيق.