يستخدم نموذج عرض التطبيقات في Google Play مجموعة حزمات تطبيق Android لإنشاء حِزم APK محسّنة وعرضها لكل إعدادات جهاز لدى المستخدم، ما يسمح للمستخدمين بتنزيل الرمز البرمجي والموارد التي يحتاجون إليها فقط لتشغيل تطبيقك.
تستخدِم ميزة "عرض الميزات في Play" إمكانات متقدّمة لحِزم التطبيقات، ما يسمح بعرض ميزات معيّنة من تطبيقك بشكل مشروط أو تنزيلها عند الطلب. لإجراء ذلك، عليك أولاً فصل هذه الميزات عن تطبيقك الأساسي ووضعها في وحدات ميزات.
إعدادات تصميم وحدة الميزات
عند إنشاء وحدة ميزة جديدة باستخدام "استوديو Android"، يطبِّق محرّر بيئة التطوير المتكامل
المكوّن الإضافي التالي لـ Gradle على ملف build.gradle
للوحدة.
// The following applies the dynamic-feature plugin to your feature module.
// The plugin includes the Gradle tasks and properties required to configure and build
// an app bundle that includes your feature module.
plugins {
id 'com.android.dynamic-feature'
}
تتوفّر أيضًا لوحدة الميزات العديد من السمات المتاحة ل مكوّن التطبيق الإضافي العادي. تصف الأقسام التالية السمات التي يجب تضمينها في إعدادات إنشاء وحدة الميزات والتي يجب عدم تضمينها.
العناصر التي يجب عدم تضمينها في إعدادات إنشاء وحدة الميزات
ولأنّ كل وحدة ميزة تعتمد على الوحدة الأساسية، فإنّها ترث أيضًا
إعدادات معيّنة. لذلك، عليك حذف ما يلي في ملفbuild.gradle
لوحدة الميزات:
- إعدادات التوقيع: يتم توقيع حِزم التطبيقات باستخدام إعدادات التوقيع التي تحدّدها في الوحدة الأساسية.
- موقع
minifyEnabled
: يمكنك تفعيل تصغير الرموز البرمجية لمشروع تطبيقك بالكامل من إعدادات الإصدار للوحدة الأساسية فقط. لذلك، يجب حذف هذا الموقع من وحدات الميزات. ومع ذلك، يمكنك تحديد قواعد ProGuard إضافية لكل وحدة ميزة. versionCode
وversionName
: عند إنشاء حِزمة تطبيقك، يستخدِم Gradle معلومات إصدار التطبيق التي تقدّمها الوحدة الأساسية. يجب حذف هذه السمات من ملفbuild.gradle
الخاص بوحدة الميزات.
إنشاء علاقة بالوحدة الأساسية
عندما ينشئ Android Studio وحدة الميزات، يجعلها مرئية
للوحدة الأساسية من خلال إضافة سمة android.dynamicFeatures
إلىملفbuild.gradle
الوحدة الأساسية، كما هو موضّح أدناه:
// In the base module’s build.gradle file.
android {
...
// Specifies feature modules that have a dependency on
// this base module.
dynamicFeatures = [":dynamic_feature", ":dynamic_feature2"]
}
بالإضافة إلى ذلك، يتضمّن "استوديو Android" الوحدة الأساسية كعنصر تابع لوحدة الميزات، كما هو موضّح أدناه:
// In the feature module’s build.gradle file:
...
dependencies {
...
// Declares a dependency on the base module, ':app'.
implementation project(':app')
}
تحديد قواعد ProGuard إضافية
على الرغم من أنّ إعدادات إنشاء الوحدة الأساسية فقط هي التي قد تتيح تصغير الرمز المبرمَج
لمشروع تطبيقك، يمكنك توفير قواعد ProGuard مخصّصة مع كل
وحدة ميزة باستخدام السمة
proguardFiles
، كما هو موضّح أدناه.
android.buildTypes {
release {
// You must use the following property to specify additional ProGuard
// rules for feature modules.
proguardFiles 'proguard-rules-dynamic-features.pro'
}
}
يُرجى العلم أنّه يتم دمج قواعد ProGuard هذه مع القواعد الواردة من الوحدات الأخرى (بما في ذلك الوحدة الأساسية) في وقت الإنشاء. وبالتالي، على الرغم من أنّ كل وحدة ميزات قد تحدّد مجموعة جديدة من القواعد، تنطبق هذه القواعد على جميع الوحدات في مشروع التطبيق.
نشر تطبيقك
أثناء تطوير تطبيقك مع إتاحة وحدات الميزات، يمكنك نشر تطبيقك على جهاز متصل كما تفعل عادةً من خلال اختيار تشغيل > تشغيل من شريط القوائم (أو بالنقر على تشغيل في شريط الأدوات).
إذا كان مشروع تطبيقك يتضمّن وحدة ميزات واحدة أو أكثر، يمكنك اختيار الميزات التي تريد تضمينها عند نشر تطبيقك من خلال تعديل إعدادات التشغيل/تصحيح الأخطاء الحالية على النحو التالي:
- اختَر تشغيل > تعديل الإعدادات من شريط القوائم.
- من اللوحة اليمنى من مربّع حوار إعدادات التشغيل/التصحيح، اختَر إعداد تطبيق Android المطلوب.
- ضمن الميزات الديناميكية المطلوب نشرها في علامة التبويب الإعدادات العامة، ضَع علامة في المربّع بجانب كل وحدة ميزة تريد تضمينها عند نشر تطبيقك.
- انقر على موافق.
لا ينشر Android Studio تطبيقك تلقائيًا باستخدام حِزم التطبيقات لنشره، وبدلاً من ذلك، ينشئ IDE حِزم APK المثلى لسرعة النشر ويثبّتها على جهازك، بدلاً من حجم حِزم APK. لضبط Android Studio لإنشاء حِزم APK والتجارب الفورية من حِزمة تطبيق ونشرها بدلاً من ذلك، يمكنك تعديل إعدادات التشغيل/تصحيح الأخطاء.
استخدام وحدات الميزات لتخصيص عرض الإعلانات
من المزايا الفريدة لوحدات الميزات إمكانية تخصيص كيفية تنزيل ميزات تطبيقك المختلفة ووقت تنزيلها على الأجهزة التي تعمل بالإصدار 5.0 من نظام التشغيل Android (المستوى 21 من واجهة برمجة التطبيقات) أو إصدار أحدث. على سبيل المثال، لتقليل حجم التنزيل الأولي لتطبيقك، يمكنك ضبط ميزات معيّنة ليتم تنزيلها إما حسب الحاجة عند الطلب أو على الأجهزة التي تتوافق مع إمكانات معيّنة، مثل ميزة التقاط الصور أو إتاحة ميزات الواقع المعزّز.
على الرغم من أنّ عمليات التنزيل المحسّنة للغاية تكون متاحة تلقائيًا عند تحميل تطبيقك كهدية حزمة تطبيق، فإنّ خيارات عرض الميزات الأكثر تقدمًا وقابلية للتخصيص تتطلب إعدادات إضافية وتقسيم ميزات تطبيقك إلى وحدات باستخدام وحدات الميزات. وهذا يعني أنّ وحدات الميزات توفّر العناصر الأساسية لإنشاء ميزات وحدات يمكنك ضبطها لتتم تنزيلها كلّما لزم الأمر.
يمكنك إنشاء تطبيق يتيح للمستخدمين شراء السلع وبيعها في سوق على الإنترنت. يمكنك تقسيم كل وظيفة من وظائف التطبيق التالية إلى وحدات ميزات منفصلة بشكل معقول:
- تسجيل الدخول إلى الحساب وإنشاؤه
- تصفُّح السوق
- عرض سلعة للبيع
- معالجة الدفعات
يوضّح الجدول التالي خيارات العرض المختلفة التي تتيحها وحدات الصعوبات ، وكيفية استخدامها لتحسين حجم التنزيل الأولي لتطبيق السوق النموذجي.
خيار التسليم | السُلوك | مثال على حالة الاستخدام | الخطوات الأولى |
---|---|---|---|
العرض في وقت التثبيت | يتم تنزيل وحدات الميزات التي لا تضبط أيًا من خيارات العرض
الموضّحة أعلاه تلقائيًا عند تثبيت التطبيق. هذا سلوك مهم
لأنّه يعني أنّه يمكنك استخدام خيارات التسليم المتقدمة
تدريجيًا. على سبيل المثال، لا يمكنك الاستفادة من تقسيم
الميزات في تطبيقك إلى وحدات وتفعيل ميزة العرض عند الطلب إلا بعد تنفيذ
عمليات التنزيل عند الطلب بالكامل باستخدام "مكتبة عرض الميزات في Play".
بالإضافة إلى ذلك، يمكن لتطبيقك طلب إلغاء تثبيت الميزات في وقت لاحق. وبالتالي، إذا كنت بحاجة إلى ميزات معيّنة عند تثبيت التطبيق، وليس بعد ذلك، يمكنك تقليل حجم التثبيت من خلال طلب إزالة الميزة من الجهاز. |
إذا كان التطبيق يتضمّن أنشطة تدريبية معيّنة، مثل دليل تفاعلي
حول كيفية شراء السلع وبيعها في السوق، يمكنك تضمين هذه الميزة
تلقائيًا عند تثبيت التطبيق.
ومع ذلك، لتقليل حجم التطبيق المثبَّت، يمكن للتطبيق طلب حذف الميزة بعد أن يُكمل المستخدم التدريب. |
تقسيم تطبيقك إلى وحدات باستخدام وحدات ميزات
لا تضبط أي خيارات تسليم متقدّمة
للتعرّف على كيفية تقليل حجم تطبيقك المثبَّت عن طريق إزالة بعض وحدات الميزات التي قد لا يحتاجها المستخدم بعد الآن، يمكنك الاطّلاع على مقالة إدارة الوحدات المثبَّتة. |
التسليم عند الطلب | السماح لتطبيقك بطلب وحدات الميزات وتنزيلها حسب الحاجة | إذا كان% 20 فقط من مستخدمي تطبيق السوق ينشرون سلعًا للبيع، فإنّ
من الاستراتيجيات الجيدة لتقليل حجم التنزيل الأولي لمعظم المستخدمين
هي إتاحة ميزة التقاط الصور، بما في ذلك وصف
سلعة، وعرض سلعة للبيع كتنزيل عند الطلب. وهذا يعني أنّه يمكنك ضبط وحدة الميزات لتحميل وظائف
البيع في التطبيق فقط عندما يُظهر مستخدم
اهتمامًا بعرض سلع للبيع في السوق.
بالإضافة إلى ذلك، إذا توقّف المستخدم عن بيع السلع بعد فترة معيّنة، يمكن للتطبيق تقليل حجمه المثبَّت من خلال طلب إلغاء تثبيت الميزة. |
أنشئ وحدة ميزات واضبط ميزة "العرض عند الطلب". يمكن لتطبيقك بعد ذلك استخدام مكتبة "عرض الميزات في Play" لطلب تنزيل الوحدة عند الطلب. |
التسليم المشروط | يتيح لك تحديد متطلبات معيّنة لأجهزة المستخدمين، مثل ميزات الأجهزة واللغة والحد الأدنى لمستوى واجهة برمجة التطبيقات لتحديد ما إذا كان سيتم تنزيل ميزة مصغّرة عند تثبيت التطبيق. | إذا كان تطبيق السوق يتمتع بمدى وصول عالمي، قد تحتاج إلى إتاحة طرق الدفع الشائعة في مناطق أو أماكن معيّنة فقط. لتقليل حجم التنزيل الأولي للتطبيق، يمكنك إنشاء وحدات ميزات منفصلة لمعالجة أنواع معيّنة من طرق الدفع وتثبيتها بشكل مشروط على جهاز المستخدم استنادًا إلى اللغة المسجّلة. | أنشئ وحدة ميزة و اضبط العرض المشروط. |
التسليم الفوري | تتيح ميزة تطبيقات Google Play الفورية
للمستخدمين التفاعل مع تطبيقك بدون الحاجة إلى تثبيته
على أجهزتهم. بدلاً من ذلك، يمكنهم تجربة تطبيقك من خلال الزر "استخدام التطبيق
الآن" على "متجر Google Play" أو من خلال عنوان URL تنشئه. يسهّل عليك هذا الشكل من
عرض المحتوى زيادة التفاعل مع
تطبيقك.
من خلال ميزة "العرض الفوري"، يمكنك استخدام تقنية "تطبيقات Google Play الفورية" للسماح للمستخدمين بتجربة ميزات معيّنة من تطبيقك على الفور بدون تثبيته. |
فكِّر في لعبة تتضمّن المستويات القليلة الأولى من اللعبة في وحدة ميزات خفيفة الوزن. يمكنك تفعيل هذه الوحدة على الفور كي تتمكّن من تجربة اللعبة على الفور من خلال رابط عنوان URL أو زر "محاولة الآن"، بدون تثبيت التطبيق. | أنشئ وحدة ميزات واضبط
العرض الفوري. يمكن لتطبيقك بعد ذلك استخدام
مكتبة "عرض الميزات في Play" لطلب
تنزيل الوحدة عند الطلب.
تجدر الإشارة إلى أنّ تقسيم ميزات تطبيقك إلى وحدات باستخدام وحدات الميزات هو الخطوة الأولى فقط. لاستخدام ميزة "التطبيقات الفورية" من Google Play، يجب أن يستوفي حجم تنزيل الوحدتَين الأساسية والميزتَين المفعَّلتَين للتطبيق قيودًا صارمة على الحجم. لمزيد من المعلومات، اطّلِع على مقالة تفعيل التجارب الفورية من خلال تقليل حجم التطبيق أو اللعبة. |
إنشاء معرّف موارد منتظم لمورد
إذا كنت تريد الوصول إلى مورد مخزّن في وحدة ميزة باستخدام
معرّف الموارد المنتظم (URI)، إليك كيفية إنشاء معرّف URI لمورد وحدة الميزة باستخدام
Uri.Builder()
:
Kotlin
val uri = Uri.Builder() .scheme(ContentResolver.SCHEME_ANDROID_RESOURCE) .authority(context.getPackageName()) // Look up the resources in the application with its splits loaded .appendPath(resources.getResourceTypeName(resId)) .appendPath(String.format("%s:%s", resources.getResourcePackageName(resId), // Look up the dynamic resource in the split namespace. resources.getResourceEntryName(resId) )) .build()
Java
String uri = Uri.Builder() .scheme(ContentResolver.SCHEME_ANDROID_RESOURCE) .authority(context.getPackageName()) // Look up the resources in the application with its splits loaded .appendPath(resources.getResourceTypeName(resId)) .appendPath(String.format("%s:%s", resources.getResourcePackageName(resId), // Look up the dynamic resource in the split namespace. resources.getResourceEntryName(resId) )) .build().toString();
يتم إنشاء كل جزء من مسار الوصول إلى المورد في وقت التشغيل، ما يضمن أن يتم إنشاء مساحة الاسم الصحيحة بعد تحميل حِزم APK المجزّأة.
على سبيل المثال، لإنشاء عنوان URI، لنفترض أنّ لديك تطبيقًا و وحدات ميزات تحمل الأسماء التالية:
- اسم حزمة التطبيق:
com.example.my_app_package
- اسم حزمة موارد العنصر:
com.example.my_app_package.my_dynamic_feature
إذا كان الرمز resId
في مقتطف الرمز أعلاه يشير إلى مورد ملف خام باسم
"my_video" في وحدة الميزات، سيؤدي الرمز Uri.Builder()
أعلاه إلى
عرض ما يلي:
android.resource://com.example.my_app_package/raw/com.example.my_app_package.my_dynamic_feature:my_video
ويمكن بعد ذلك لتطبيقك استخدام عنوان URL هذا للوصول إلى مورد وحدة الميزات.
للتحقّق من صحة المسارات في معرّف الموارد المنتظم، يمكنك استخدام أداة تحليل حِزم APK لفحص حزمة APK الخاصة بوحدة الميزات وتحديد اسم الحزمة:
اعتبارات حول وحدات الميزات
باستخدام وحدات الميزات، يمكنك تحسين سرعة التصميم وسرعة التطوير وتخصيص عملية عرض ميزات تطبيقك على نطاق واسع لتقليل حجم تطبيقك. ومع ذلك، هناك بعض القيود والحالات الشاذة التي يجب أخذها في الاعتبار عند استخدام وحدات الميزات:
- قد يؤدي تثبيت 50 وحدة ميزة أو أكثر على جهاز واحد، من خلال العرض الشَرطي أو العرض عند الطلب، إلى حدوث مشاكل في الأداء. يتم تلقائيًا تضمين الوحدات التي يتم عرضها أثناء التثبيت والتي لم يتم ضبطها على أنّها قابلة للإزالة في الوحد ة الأساسية، ولا يتم احتسابها إلا كوحدة ميزة واحدة على كل جهاز.
- حدِّد 10 وحدات أو أقل كحد أقصى للوحدات التي يتم ضبطها على أنّها قابلة للإزالة من أجل إرسالها أثناء عملية التثبيت. وفي حال عدم إجراء ذلك، قد يزداد وقت تنزيل تطبيقك وتثبيته.
- لا تتوفّر ميزة تنزيل الميزات وتثبيتها عند الطلب إلا على الأجهزة التي تعمل بالإصدار 5.0 من نظام التشغيل Android (المستوى 21 من واجهة برمجة التطبيقات) والإصدارات الأحدث. لإتاحة ميزتك لإصدارات Android الأقدم، فعِّل ميزة دمج عند إنشاء وحدة ميزة.
- فعِّل SplitCompat، لكي يتمكّن تطبيقك من الوصول إلى وحدات الميزات التي تم تنزيلها والتي يتم عرضها عند الطلب.
- يجب ألا تحدِّد وحدات الميزات الأنشطة في ملف البيان مع ضبط
android:exported
علىtrue
. ويعود السبب في ذلك إلى أنّه ما مِن ضمان بأنّه قد تم تنزيل وحدة الميزات على الجهاز عند محاولة تطبيق آخر لبدء النشاط. بالإضافة إلى ذلك، يجب أن يؤكّد تطبيقك أنّه تم تنزيل الميزة قبل محاولة الوصول إلى رمزها البرمجي ومواردها. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إدارة الوحدات المثبَّتة. - بما أنّ ميزة "عرض الميزات في Play" تتطلّب منك نشر تطبيقك باستخدام حِزمة تطبيق، تأكّد من أنّك على دراية بالمشاكل المعروفة المتعلّقة بحِزم التطبيقات.
مرجع بيان وحدة الميزات
عند إنشاء وحدة ميزة جديدة باستخدام Android Studio، يحتوي IDE على معظم سمات البيان التي تتطلّب الوحدة لتعمل كوحدة ميزة. بالإضافة إلى ذلك، يُدخل نظام الإنشاء بعض السمات في وقت الترجمة، لذا ليس عليك تحديدها أو تعديلها بنفسك. يصف الجدول التالي سمات البيان المهمة ل وحدات الميزات.
السمة | الوصف |
---|---|
<manifest | هذه هي قطعة قياسية
<manifest> . |
xmlns:dist="http://schemas.android.com/apk/distribution" | تُحدِّد مساحة اسم XML جديدة dist: يتم
وصفها أدناه. |
split="split_name" |
عندما ينشئ "استوديو Android" حِزمة تطبيقك، يُدرِج هذه
السمة نيابةً عنك. لذلك، يجب عدم تضمين هذه السمة أو تعديلها
بنفسك.
يحدِّد اسم الوحدة الذي يحدّده تطبيقك عند طلب وحدة عند الطلب باستخدام مكتبة "عرض الميزات في Play". كيفية تحديد Gradle لقيمة هذه السمة: عند إنشاء وحدة ميزة باستخدام IDE Android Studio، يستخدم IDE تلقائيًا ما تحدّده كأحد أسماء الوحدات لتحديد الوحدة كمشروع فرعي في Gradle في "ملف إعدادات Gradle".
عند إنشاء حِزمة تطبيقك، يستخدم Gradle العنصر الأخير من
مسار المشروع الفرعي لإدراج سمة البيان هذه في بيان
الوحدة. على سبيل المثال، إذا أنشأت وحدة ميزة جديدة في
دليل |
android:isFeatureSplit="true | false"> |
عندما ينشئ "استوديو Android" حِزمة تطبيقك، يُدرِج
هذه السمة نيابةً عنك. لذلك، يجب عدم تضمين
هذه السمة أو تعديلها يدويًا.
تُحدِّد هذه السمة أنّ هذه الوحدة هي وحدة ميزة.
في البيانَين الواردَين في الوحدة الأساسية وحِزم APK الخاصة بالضبط، إما
يتم حذف هذه السمة أو ضبطها على |
<dist:module | تحدِّد السمات التي تحدّد كيفية تجميع الوحدة و توزيعها كحِزم APK. |
dist:instant="true | false" |
تُستخدَم لتحديد ما إذا كان يجب أن تكون الوحدة متاحة من خلال
تطبيقات Google Play الفورية كأحد
التجارب الفورية.
إذا كان تطبيقك يتضمّن وحدة واحدة أو أكثر من وحدات الميزات التي تم تفعيلها بشكل فوري، يجب أيضًا تفعيل الوحدة الأساسية بشكل فوري. عند استخدام IDE الإصدار 3.5 من "استوديو Android" أو إصدار أحدث، سيُجري ذلك نيابةً عنك عند إنشاء وحدة ميزات مفعَّلة بشكل فوري. لا يمكنك ضبط عنصر XML هذا على |
dist:title="@string/feature_name"> |
تحدِّد هذه السمة عنوانًا موجهًا للمستخدم للمكوّن. على سبيل المثال،
قد يعرض الجهاز هذا العنوان عندما يطلب تأكيد عملية التنزيل.
عليك تضمين مورد السلسلة لهذا العنوان
في ملف |
<dist:fusing dist:include="true | false" /> |
لتحديد ما إذا كان سيتم تضمين الوحدة في حِزم APK متعددة تستهدف
الأجهزة التي تعمل بنظام التشغيل Android 4.4 (المستوى 20 لواجهة برمجة التطبيقات) والإصدارات الأقدم.
بالإضافة إلى ذلك، عند
استخدام |
<dist:delivery> | تُغلِّف الخيارات التي تخصّص عرض الوحدة، كما هو موضّح أدناه. تجدر الإشارة إلى أنّ كلّ وحدة ميزة يجب أن تضبط نوعًا واحدًا فقط من خيارات العرض المخصّصة هذه. |
<dist:install-time> |
تشير إلى أنّ الوحدة يجب أن تكون متاحة في وقت التثبيت. هذا هو السلوك
التلقائي لمكوّنات الميزات التي لا تحدّد نوعًا
آخر من خيار التسليم المخصّص.
للاطّلاع على مزيد من المعلومات عن عمليات التنزيل أثناء التثبيت، يُرجى الاطّلاع على مقالة ضبط عملية التسليم أثناء التثبيت. يمكن لهذه العقدة أيضًا تحديد الشروط التي تحدّ من استخدام الوحدة على الأجهزة التي تستوفي متطلبات معيّنة، مثل ميزات الجهاز أو بلد المستخدم أو الحد الأدنى لمستوى واجهة برمجة التطبيقات. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة ضبط التسليم الشَرطي. |
<dist:removable dist:value="true | false" /> |
عند عدم ضبط القيمة أو ضبطها على عند ضبط الإعداد التلقائي هو ملاحظة: لا تتوفّر هذه الميزة إلا عند استخدام الإصدار 4.2 من المكوّن الإضافي لنظام Gradle المتوافق مع Android أو عند استخدام الإصدار 1.0 من أداة bundletool من سطر الأوامر. |
</dist:install-time> | |
<dist:on-demand /> |
تُستخدَم لتحديد أنّ الوحدة يجب أن تكون متاحة كتنزيل عند الطلب. وهذا يعني أنّ الوحدة غير متاحة في وقت التثبيت، ولكن
قد يطلب تطبيقك تنزيلها لاحقًا.
لمزيد من المعلومات حول عمليات التنزيل عند الطلب، يُرجى الاطّلاع على مقالة ضبط إعدادات العرض عند الطلب. |
</dist:delivery> | |
</dist:module> | |
<application
android:hasCode="true | false"> ... </application> |
إذا لم تنشئ وحدة الميزات أي ملفات DEX، أي أنّها لا تحتوي
على أي رمز برمجي يتم تجميعه لاحقًا بتنسيق ملف DEX، عليك تنفيذ ما يلي:
|
... </manifest> |
مصادر إضافية
لمزيد من المعلومات عن استخدام وحدات الميزات، يمكنك الاطّلاع على المراجع التالية.
مشاركات المدونة
- ميزات جديدة لمساعدتك في تطوير نشاطك التجاري وزيادة حجمه ورفع مستوى أدائه على Google Play
- أحدث تحديثات "مجموعة حزمات تطبيق Android"، بما في ذلك واجهة برمجة التطبيقات لمزيد من اللغات
- تجزئة تطبيق Plaid: تقسيم التطبيق إلى وحدات
الفيديوهات
- العرض المخصَّص للمنتجات باستخدام حِزمة التطبيق والمشاركة السهلة للإصدارات المخصَّصة للاختبار
- أدوات جديدة لتحسين حجم تطبيقك وزيادة عمليات التثبيت على Google Play
بنود الخدمة وسلامة البيانات
يعني الوصول إلى "مكتبة إرسال الميزات في Play" أو استخدامها موافقتك على بنود خدمة حزمة تطوير البرامج Play Core. يُرجى قراءة وفهم جميع الأحكام والسياسات السارية قبل الوصول إلى المكتبة.
أمان البيانات
مكتبات Play Core هي واجهة وقت تشغيل تطبيقك مع "متجر Google Play". ولذلك، عند استخدام Play Core في تطبيقك، ينفِّذ "متجر Play" عملياته الخاصة، بما في ذلك معالجة البيانات وفقًا لأحكام بنود خدمة Google Play. توضّح المعلومات أدناه كيفية معالجة مكتبات Play Core للبيانات بهدف معالجة طلبات معيّنة من تطبيقك.
Additional languages API
البيانات التي يتم جمعها استنادًا إلى الاستخدام | قائمة اللغات المثبّتة |
الغرض من جمع البيانات | تُستخدَم البيانات التي يتم جمعها لتوفير نُسخ مختلفة من التطبيق بلغات مختلفة وللحفاظ على اللغات المثبَّتة بعد تحديث التطبيق. |
ترميز البيانات | يتم تشفير البيانات. |
مشاركة البيانات | لا يتم نقل البيانات إلى أي جهات خارجية. |
حذف البيانات | يتم حذف البيانات بعد فترة الاحتفاظ الثابتة. |
عرض الميزات في Play
البيانات التي يتم جمعها استنادًا إلى الاستخدام |
البيانات الوصفية للجهاز إصدار التطبيق |
الغرض من جمع البيانات | يتم استخدام البيانات التي يتم جمعها لعرض الوحدة المناسبة على الجهاز وللحفاظ على الوحدات المثبَّتة بعد التحديث والنسخ الاحتياطي والاستعادة. |
ترميز البيانات | يتم تشفير البيانات. |
مشاركة البيانات | لا يتم نقل البيانات إلى أي جهات خارجية. |
حذف البيانات | يتم حذف البيانات بعد فترة الاحتفاظ الثابتة. |
نهدف إلى الالتزام بالشفافية قدر الإمكان، ولكنّك وحدك المسؤول عن تحديد كيفية ملء نموذج قسم "أمان البيانات" في Google Play بشأن ممارسات جمع بيانات المستخدمين ومشاركتها وأمانها في تطبيقك.