يتيح Android 9 لمشغّلي شبكات الجوّال تزويد المستخدمين مباشرةً بتفاصيل موثوقة حول الخطط في تطبيق "الإعدادات" للحدّ من ارتباك المستخدمين وتقليل عدد طلبات الدعم. على الأجهزة التي تعمل بنظام التشغيل Android 4.0 والإصدارات الأحدث، يمكن للمستخدمين ضبط تفاصيل خطة البيانات الخاصة بمشغّل شبكة الجوّال يدويًا في تطبيق "الإعدادات"، مثلاً، ضبط التحذيرات والحدود لإدارة استخدامهم للبيانات.
الضبط من قِبل مشغّل شبكة الجوّال
لضبط خطط البيانات، يمكن لمشغّلي شبكات الجوّال إضافة وظائف إلى تطبيقات Android الحالية باستخدام واجهات برمجة التطبيقات
SubscriptionPlan APIs.
تم تصميم واجهات برمجة التطبيقات هذه لتتوافق مع مجموعة كبيرة من أنواع خطط البيانات، بما في ذلك الخطط المتكرّرة وغير المتكرّرة، والخطط التي تتغيّر بمرور الوقت.
في ما يلي مثال على كيفية ضبط نوع شائع من خطط البيانات التي تتكرّر شهريًا:
SubscriptionManager sm =
context.getSystemService(SubscriptionManager.class);
sm.setSubscriptionPlans(subId, Lists.newArrayList(
SubscriptionPlan.Builder.createRecurringMonthly(
ZonedDateTime.parse("2016-12-03T10:00:00Z"))
.setTitle("G-Mobile")
.setDataLimit(4_000_000_000L,
SubscriptionPlan.LIMIT_BEHAVIOR_BILLED)
.setDataUsage(200_493_293L, dataUsageTimestamp)
.build()));
لا يسمح الجهاز لأي تطبيق بضبط خطط البيانات إلا في إحدى الحالتَين التاليتَين:
- إذا كانت شريحة SIM قد حدّدت بشكل صريح تطبيقًا يمكنه إدارتها، كما هو محدّد في
SubscriptionManager.canManageSubscription(). - إذا أرسل مشغّل شبكة الجوّال القيمة
KEY_CONFIG_PLANS_PACKAGE_OVERRIDE_STRINGمن خلالCarrierConfigManagerللإشارة إلى التطبيق الذي يمكنه إدارة خطط بيانات مشغّل شبكة الجوّال. - إذا كان الجهاز يتضمّن تطبيقًا مضمّنًا في صورة نظام التشغيل ولديه الإذن
MANAGE_SUBSCRIPTION_PLANS.
تتيح الحالتان الأوليان للمستخدم تثبيت تطبيق مشغّل شبكة الجوّال، بدون الحاجة إلى تثبيته مسبقًا في صورة نظام التشغيل في المصنع. يفرض نظام التشغيل (ويتطلّب مستند تعريف التوافق) حماية جميع تفاصيل خطة البيانات التي تم ضبطها ولا يتيحها إلا لتطبيق مشغّل شبكة الجوّال الذي قدّم في الأصل التفاصيل إلى نظام التشغيل.
أحد التصاميم المقترَحة هو أن يستخدم تطبيق مشغّل شبكة الجوّال خدمة صيانة غير نشطة لتعديل تفاصيل خطة البيانات يوميًا، ولكن يمكن لمشغّلي شبكات الجوّال استخدام مجموعة كبيرة من الآليات، مثل تلقّي تفاصيل خطة البيانات من خلال رسائل SMS داخلية من مشغّل شبكة الجوّال. من الأفضل تنفيذ خدمات الصيانة غير المستخدَمة من قِبل أي برنامج حاليًا باستخدام
JobScheduler مهمة تستخدم
setRequiresDeviceIdle()
و
setRequiresCharging().
الاستخدام حسب نظام التشغيل
يستخدم نظام التشغيل تفاصيل خطة البيانات التي توفّرها واجهات برمجة التطبيقات SubscriptionPlan بالطرق التالية:
- تظهر تفاصيل الخطة من خلال تطبيق "الإعدادات" لعرض معلومات دقيقة عن استخدام البيانات للمستخدمين وتوفير روابط مباشرة وعميقة إلى تطبيق مشغّل شبكة الجوّال لفرص الترقية أو البيع الإضافي.
- يتم ضبط إشعارات التحذير من استخدام البيانات وتجاوز الحد تلقائيًا استنادًا إلى تفاصيل الخطة، ويتم ضبط التحذير على% 90 من الحد.
- إذا أشار مشغّل شبكة الجوّال مؤقتًا إلى أنّ الشبكة "مزدحمة"، يؤخّر نظام التشغيل مهام JobScheduler التي يمكن تغيير وقتها، ما يقلّل من الحمل على شبكة مشغّل شبكة الجوّال.
- إذا أشار مشغّل شبكة الجوّال مؤقتًا إلى أنّ الشبكة "لا تفرض تكلفة استخدام"، يمكن لنظام التشغيل الإبلاغ عن اتصال شبكة الجوّال على أنّه "لا تفرض تكلفة استخدام" إلى أن يزيل مشغّل شبكة الجوّال الإعدادات التي تم تجاوزها، أو إلى أن يتم بلوغ قيمة المهلة (إذا تم توفيرها).
- من خلال مقارنة استخدام المستخدم الحالي للبيانات بالحدّ الأقصى العام للبيانات، يقدّر نظام التشغيل استخدام المستخدم العادي للبيانات في نهاية دورة الفوترة ويخصّص بشكل متحفّظ% 10 من أي بيانات فائضة لتحسين تجربة المستخدم، مثلاً، من خلال السماح للتطبيقات باستخدام بيانات متعددة المسارات.
التخصيص والتحقق من الصلاحية
يعرض تطبيق "إعدادات Android" جميع تفاصيل خطة البيانات التي ضبطها مشغّل شبكة الجوّال، ما يضمن للمستخدمين الاطّلاع على الحالة الأكثر دقة لعلاقتهم بمشغّل شبكة الجوّال، ويوفّر لهم مسارًا إلى تطبيق مشغّل شبكة الجوّال لترقية خطتهم. يُنصح مصنّعو الأجهزة الذين يختارون تخصيص تطبيق "الإعدادات" بمواصلة عرض هذه التفاصيل.
يتم اختبار واجهات برمجة التطبيقات SubscriptionManager الموضّحة في هذه الصفحة من خلال
android.telephony.cts.SubscriptionManagerTest، ما يضمن إمكانية ضبط تفاصيل خطة البيانات
من قِبل تطبيقات مشغّل شبكة الجوّال ونشر التغييرات داخل
نظام التشغيل.