مخطّط لحِزم البيانات الوصفية للتطبيقات

بدءًا من الإصدار 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 يحدّد أنواع البيانات لفئة معيّنة.

  • personal
  • financial
  • location
  • email_text_message
  • photo_video
  • audio
  • storage
  • health_fitness
  • contacts
  • calendar
  • identifiers
  • app_performance
  • actions_in_app
  • search_and_browsing

أنواع البيانات

يرتبط كل مفتاح في الحزمة data_category بحزمة مختلفة تستخدم تنسيق data_type تعتمد المفاتيح التي تحدّدها في تنسيق data_type على ما تختاره لـ data_category.

يظهر data_type زوج المفتاح/القيمة المحتملة في القوائم التالية. قيمة كل مفتاح من هذه المفاتيح هي عنصر PersistableBundle يصف ممارسات استخدام البيانات في التطبيق لهذا النوع المحدّد من البيانات. بعض أنواع البيانات تستخدم مفتاحًا واحدًا فقط.

شخصي

  • name
  • email_address
  • physical_address
  • phone_number
  • race_ethnicity
  • political_or_religious_beliefs
  • sexual_orientation_or_gender_identity
  • personal_identifiers
  • other

المسائل المالية

  • card_bank_account
  • purchase_history
  • credit_score
  • other

الموقع الجغرافي

  • approx_location
  • precise_location

الرسائل الإلكترونية والرسائل النصية

  • emails
  • text_messages
  • other

الصور والفيديوهات

  • photos
  • videos

الصوت

  • sound_recordings
  • music_files
  • other

مساحة التخزين

files_docs

اللياقة البدنية

  • health
  • fitness

جهات الاتصال

contacts

تقويم Google

calendar

المعرّفات

other

أداء التطبيق

  • crash_logs
  • performance_diagnostics
  • other

الإجراءات في التطبيق

  • user_interaction
  • in_app_search_history
  • installed_apps
  • user_generated_content
  • other

البحث والتصفُّح

web_browsing_history

استخدام البيانات

تحتوي حزمة data_usage على أزواج المفتاح/القيمة التالية:

purposes(مطلوب)

يشير هذا المصطلح إلى مصفوفة من الأعداد الصحيحة تمثّل أسبابًا محدّدة لجمع البيانات أو يشارك البيانات ويستخدم "PersistableBundle" putIntArray . يجب تقديم أحد الأغراض المحدّدة أدناه على الأقل لكل حزمة.

  • 1: PURPOSE_APP_FUNCTIONALITY
  • 2: PURPOSE_ANALYTICS
  • 3: PURPOSE_ موضوع_COMMUNICATIONS
  • 4: PURPOSE_FRAUD_PREVENTION_SECURITY
  • 5: PURPOSE_ADVERTISING
  • 6: PURPOSE_PERSONALIZATION
  • 7: 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
سلسلة توضح الموقع الإلكتروني للتطبيق.