ملفات شخصية مُفعَّلة متعددة

بالنسبة إلى الأجهزة التي تعمل بالإصدار 13 من نظام التشغيل Android أو إصدار أحدث، يتيح Android استخدام عدة ملفات شخصية مفعَّلة (MEP) لبطاقة eUICC. تتيح هذه الميزة للأجهزة استخدام شريحتَي SIM من خلال شريحة eSIM واحدة يمكن أن تتضمّن ملفات شخصية متعددة لشرائح SIM ويمكنها الاتصال بمشغّلين مختلفَين في الوقت نفسه. على مصنّعي الأجهزة العمل مع مورّدي المنظومة على الرقاقة ومورّدي شرائح eSIM لدمج هذه الميزة في أجهزتهم.

الخلفية

على الأجهزة التي تعمل بالإصدار 12 من نظام التشغيل Android والإصدارات الأقدم، يوفّر مشروع Android مفتوح المصدر (AOSP) دعمًا محدودًا للسماح لشريحة eSIM واحدة بتوفير ملفات شخصية متعددة في الوقت نفسه. على الرغم من المزايا الكبيرة التي توفّرها شريحة eSIM من حيث المساحة والتكلفة، فإنّ عدم توفّر ميزة شرائح SIM المزدوجة يمنع الشركات المصنّعة للأجهزة من اعتماد أجهزة مزوّدة بشريحة eSIM فقط. لتوفير إمكانية استخدام شريحتَي SIM على جهاز مزوّد بشريحة eSIM فقط، على الشركات المصنّعة للأجهزة تضمين عنصرَي eSIM في الجهاز، ما يؤدي إلى زيادة تكاليف قائمة المواد (BOM) وتدهور تجربة المستخدمين في ما يتعلق بإدارة الاشتراكات. تعالج ميزة "ملف تعريف العمل" المتوفّرة في مشروع Android مفتوح المصدر (AOSP) من الإصدار 13 من نظام التشغيل Android هذه المشكلة.

بنية eUICC

يوضّح هذا القسم بنية شريحة eSIM للأجهزة التي تتضمّن ميزة MEP في إصدارات Android المختلفة، وبنية شريحة eSIM للأجهزة التي لا تتضمّن ميزة MEP.

Android 14

بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو الإصدارات الأحدث، يتيح نظام التشغيل Android الخيارَين MEP-A1 وMEP-B لاختيار جذر نطاق أمان جهة الإصدار (ISD-R) واختيار منافذ شريحة eSIM على النحو المحدّد في GSMA SGP V22 3.0. يوضّح ما يلي نماذج اختيار ISD-R الخاصة بـ MEP-A1 وMEP-B.

  • MEP-A1: يتم اختيار ISD-R على المنفذ 0 (منفذ الأوامر هو 0) ويتم اختيار الملفات الشخصية على منافذ eSIM 1 والأعلى. يتم دائمًا إرسال أوامر ES10 إلى المنفذ 0، ويكون منفذ الأمر ومنفذ الهدف مختلفَين دائمًا. يختار LPA المنفذ.

    نموذج اختيار MEP-A1 ISD-R

    الشكل 1. نموذج اختيار MEP-A1 ISD-R

  • MEP-B: يتم اختيار ISD-R على أي منفذ ويمكن تعيين ملف شخصي لأي منفذ. يتم إرسال أمرَي التفعيل والإيقاف إلى المنفذ الذي يجب تفعيل الملف الشخصي أو إيقافه فيه (حيث تكون إعادة التحميل في انتظار المراجعة). يكون منفذ الأوامر ومنفذ الاستهداف متطابقَين دائمًا.

    نموذج اختيار MEP-B ISD-R

    الشكل 2. نموذج اختيار MEP-B ISD-R

Android 13

في الإصدار 13 من نظام التشغيل Android أو الإصدارات الأحدث، على الأجهزة التي تتوافق مع ميزة "ملف تعريف eSIM متعدد"، يحتوي فتحة بطاقة eSIM على منافذ eUICC متعددة يمكن أن يتضمّن كل منفذ ملفًا شخصيًا مفعّلاً. كما هو موضّح في الشكل 3، تتيح هذه البنية الأساسية استخدام شريحة SIM المزدوجة مع تقنية الاستعداد المزدوج (DSDS) من خلال فتحة eUICC واحدة (فتحة فعلية واحدة)، وذلك عن طريق ربط كل منفذ eUICC بنطاق أساسي للمودم. تكون واجهات برمجة التطبيقات وطبقة تجريد الأجهزة (HAL) في Android 13 مستقلة عن صيغة MEP.

بنية شريحة eSIM مع إمكانية استخدام ملفات شخصية متعددة (MEP)

الشكل 3: بنية شريحة eSIM مع إمكانية استخدام ملفات شخصية متعددة (الإصدار 13 من نظام التشغيل Android أو الإصدارات الأحدث)

الإصدار 12 من نظام التشغيل Android والإصدارات الأقدم

بالنسبة إلى الأجهزة التي تعمل بالإصدار 12 من نظام التشغيل Android أو الإصدارات الأقدم بدون ميزة "الملف الشخصي المتعدد النشط" كما هو موضّح في الشكل 4، لا يتيح فتحة شريحة eSIM سوى استخدام ملف شخصي واحد مفعّل في كل مرة، ولا يمكن للجهاز استخدام ميزة "شريحة SIM المزدوجة" النشطة.

بنية شريحة eSIM بدون دعم MEP

الشكل 4. بنية شريحة eSIM بدون دعم MEP (الإصدار 12 من نظام التشغيل Android أو إصدار أقدم)

تدفّق معلومات واجهة برمجة التطبيقات لملفات شخصية متعددة مفعّلة

يوضّح الشكل 5 مسار المعلومات الخاص بميزة "ملف تعريف متعدد" لبطاقة eUICC في نظام التشغيل Android 13. يتضمّن إطار عمل الاتصال الهاتفي الفئة UiccPort التي تمثّل البنية المادية على شريحة eUICC. يتم استخدام الفئة UiccPort لجميع أنواع شرائح SIM: شريحة SIM الفعلية (pSIM) وشريحة SIM المدمجة (iSIM) وشريحة SIM المضمّنة (eSIM). بالنسبة إلى شريحة eUICC التي تتضمّن منافذ متعددة، يتم ربط كائن UiccSlot واحد وكائن UiccCard بمثيلات UiccPort متعددة. يمكن ربط كل مثيل من UiccPort بمثيل واحد من UiccProfile كحد أقصى. يتيح هذا المسار ربط UiccPort بموضع إعلاني منطقي وربط UiccSlot (موضع إعلاني فعلي) بمواضع إعلانية منطقية متعددة.

تدفّق معلومات "مقدّم خدمة الدفع"

الشكل 5. طريقة نقل البيانات في شريحة eUICC التي تتوافق مع ميزة "ملف تعريف متعدد" (MEP)

التنفيذ

يوضّح هذا القسم كيفية تنفيذ ميزة "الوصول المتعدّد إلى نقاط النهاية"، بما في ذلك تفاصيل حول متطلبات طبقة تجريد الأجهزة وواجهات برمجة التطبيقات وواجهة المستخدم. على الشركات المصنّعة للأجهزة العمل مع مورّدي المنظومة على الرقاقة (SoC) ومورّدي شرائح تعريف eSIM لتوفير ميزة "ملف تعريف متعدد" (MEP).

متطلبات طبقة تجريد الأجهزة (HAL)

لتوفير دعم MEP في eUICC، عليك تنفيذ واجهات برمجة التطبيقات التالية الخاصة بـ IRadio AIDL HAL، والموجودة في /platform/hardware/interfaces/radio/aidl/aidl_api.

يجب أن تستخدم الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو الإصدارات الأحدث واجهات طبقة تجريد الأجهزة (HAL) لإصدار IRadio 2.1، والتي تستخدم MultipleEnabledProfileMode (نموذج اختيار ISD-R المتوافق مع المودم أو شريحة eUICC) وتمرِّر معلومات أمر ES10 APDU أثناء عمليات القناة المنطقية لبطاقة ICC.

CardStatus

يجب أن يتوافق المودم مع واجهة برمجة التطبيقات CardStatus كاستجابة للطريقة getIccCardStatusResponse. يجب أن تتضمّن الاستجابة فهرس المنفذ وفهرس الفتحة المادية المحدّدين بواسطة SimPortSlotMapping.

بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو إصدار أحدث، يجب أن يجتاز المودم وضع MEP المتوافق مع جميع أحداث CardStatus.

SimSlotStatus

يجب أن يتوافق المودم مع واجهة برمجة التطبيقات SimSlotStatus كاستجابة للطريقة getSimSlotsStatus. تتضمّن حالة فتحة بطاقة SIM مصفوفة من واجهة SimPortInfo، والتي تتضمّن فهرس المنفذ ورمز ICCID للملف الشخصي المفعّل وحالة المنفذ. يجب أن يعرض الجهاز مودم كائنَين SimPortInfo على الأقل.

بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو إصدار أحدث، يجب أن يجتاز المودم وضع MEP المتوافق مع جميع أحداث CardStatus.

setSimSlotMapping

يجب أن تمرِّر طريقة setSimSlotMapping مصفوفة من SimPortSlotMapping. فهرس المصفوفة هو الخانة المنطقية، ويحدّد SimPortSlotMapping فهرس المنفذ الذي تم ربطه والخانة الفعلية. تضبط الطريقة setSimSlotMapping عملية الربط بين المنافذ والفتحات المنطقية. يستخدم تطبيق LPA هذه الطريقة لاختيار المنفذ النشط.

واجهات برمجة التطبيقات التي تتيح استخدام ملفات شخصية متعددة على شريحة eSIM

يجب أن تتوافق أجهزة Android التي تتيح استخدام ملفات شخصية متعددة مفعَّلة كجزء من حزمة الاتصالات الهاتفية في مشروع Android المفتوح المصدر (AOSP) مع واجهات برمجة التطبيقات التالية.

UiccCardInfo

  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) isMultipleEnabledProfilesSupported : تعرض هذه السمة ما إذا كانت بطاقة UICC هذه متوافقة مع ميزة "ملف تعريف متعدد".
  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) getPorts: تعرض هذه الطريقة قائمة بجميع المنافذ المتاحة لشريحة UICC معيّنة. إذا كانت بطاقة UICC عبارة عن بطاقة pSIM أو eSIM لا تتوافق مع ميزة "ملف شخصي متعدد" (MEP)، سيتم عرض قائمة تتضمّن عنصرًا واحدًا.
  • (متوقّف نهائيًا) getIccId: تعرض هذه السمة معرّف ICCID. بما أنّ بطاقة UICC يمكن أن تتضمّن أكثر من ICCID واحد للأجهزة التي تتضمّن MEP، استخدِم UiccPortInfo.getIccId() بدلاً من ذلك.

‫(Android 13 والإصدارات الأحدث) UiccPortInfo

  • getIccId: تعرض هذه السمة معرّف ICCID إذا كان هناك اشتراك مفعّل على هذا المنفذ.
  • getPortIndex: تعرض هذه السمة فهرس المنفذ.
  • getLogicalSlotIndex: تعرض هذه السمة فهرس حزمة المودم المنطقي النشط.

SubscriptionInfo

  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) getPortIndex: تعرض هذه السمة فهرس المنفذ الذي تم تفعيل الاشتراك عليه. إذا كان الاشتراك غير مفعّل، تعرض الدالة INVALID_PORT_ID -1.

EuiccManager

  • switchToSubscription: للتبديل إلى اشتراك معيّن يتم استخدامها من قِبل التطبيقات التي لا تملك امتيازات مشغّل شبكة الجوّال في الاشتراكات النشطة. عند طلب ذلك، تحلّ المنصة داخليًا فهرس المنفذ من خلال مربّع حوار يتضمّن ثلاثة خيارات، وذلك لإيقاف الاشتراك النشط المحدّد إذا لم تتوفّر منافذ. يجب ألا تستخدم التطبيقات التي تستهدف الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث واجهة برمجة التطبيقات هذه لإيقاف اشتراك من خلال تمرير معرّف اشتراك غير صالح، بل يجب أن تستخدم طريقة switchToSubscription (التي تمت إضافتها في الإصدار 13 من نظام التشغيل Android) مع تحديد فهرس المنفذ.
  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) switchToSubscription(int subscriptionId, int portIndex, PendingIntent callback): يتم التبديل إلى اشتراك معيّن. يمكن لتطبيقات الاتصال التي لديها امتيازات مشغّل شبكة الجوّال على الاشتراكات النشطة تحديد المنفذ الذي سيتم تفعيل الاشتراك عليه.
  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) isSimPortAvailable: تُستخدَم لمعرفة ما إذا كان فهرس المنفذ الذي تم تمريره متاحًا. يكون المنفذ متاحًا إذا لم يكن لديه اشتراك مفعّل أو إذا كان تطبيق الاتصال لديه امتيازات مشغّل شبكة الجوّال على الاشتراك المثبَّت على المنفذ المحدّد.

EuiccService

  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) onSwitchToSubscriptionWithPort: يتم التبديل إلى اشتراك معيّن على منفذ محدّد. يجب أن يتيح تنفيذ LPA هذه الميزة على الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث.

TelephonyManager

  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) getSimApplicationState: تعرض هذه السمة قيمة ثابتة تشير إلى حالة تطبيق البطاقة. تُمرِّر واجهة برمجة التطبيقات هذه كلاً من فهرس الفتحة المادية وفهرس المنفذ. لا تعرض الطريقة getSimApplicationState(int physicalSlotIndex) (تم إيقافها نهائيًا) سوى فهرس الموضع الفعلي للحصول على عنصر simApplicationState.
  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) setSimSlotMapping(Collection<UiccSlotMapping> slots): يربط هذا الحقل بين الفتحات المنطقية والفتحات والمنافذ المادية.
  • (الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث) Collection<UiccSlotMapping> getSimSlotMapping: تعرض هذه الطريقة عملية الربط بين الشرائح المنطقية وشرائح SIM الفعلية وفهارس المنافذ.

واجهة المستخدم

لحلّ مشكلة غموض اختيار منفذ شريحة eSIM، يجب أن يتمكّن المستخدمون على الأجهزة المتوافقة مع MEP من إيقاف أحد الاشتراكات النشطة لتفعيل اشتراك جديد. في نظام التشغيل Android 13، يتضمّن مشروع Android مفتوح المصدر (AOSP) مسار مستخدم مع مربّع حوار يتضمّن ثلاثة خيارات يمكن تطبيقه على مسارات المستخدمين التي تتيح الاشتراك من تطبيق "الإعدادات". يعرض الشكل 6 مثالاً على مسار تجربة المستخدم هذا.

مسار المستخدم للاشتراك في بطاقة SIM الخاصة بتقنية MEP

الشكل 6. مسار المستخدم لتفعيل اشتراك SIM

مفاتيح تبديل أوضاع الميزات

لإتاحة استخدام MEP، يجب أن تعلن الأجهزة عن علامات الميزات التالية:

تنفيذ LPA

لإتاحة استخدام ميزة "القياس المحسّن للخصوصية"، تأكَّد من أنّ عملية تنفيذ معالجة البيانات المحدودة تستوفي المتطلبات التالية:

  • تنفيذ واجهات برمجة التطبيقات من EuiccService لإتاحة منافذ متعددة
  • يستخدم واجهات برمجة التطبيقات لاختيار المنفذ وتفعيل الملف الشخصي.
  • توفير تجربة مستخدم تتيح لتطبيقات مشغّلي شبكات الجوّال تفعيل الملفات الشخصية على منافذ محدّدة

التحقُّق

لاختبار تنفيذ ميزة &quot;الوسائط المتعددة المحمية&quot;، تأكَّد من أنّ الإصدارات تجتاز حالات اختبار CTS التالية (بالنسبة إلى واجهات برمجة التطبيقات العامة): /platform/cts/tests/tests/telephony/current/src/android/telephony/euicc/cts.

على الشركات المصنّعة للأجهزة أيضًا التعاون مع مورّدي المودم وشريحة eUICC ونظام تشغيل شريحة eSIM لضمان قدرة الجهاز على إجراء ما يلي:

  • يمكن تفعيل ملفَّي تعريف لشريحة eSIM وربطهما بشبكتَين مختلفتَين.
  • يمكن تفعيل ملفات تعريف شرائح eSIM وإيقافها على أي منفذ لشريحة eSIM.
  • يتوفّر مسار تجربة مستخدم يتم تفعيله من خلال تطبيق مشغّل شبكة الجوّال، ما يتيح للمستخدمين التبديل بين الملفات الشخصية.

اقتراح لمشغّلي شبكات الجوّال

لضمان عدم فقدان المستخدمين للخدمة عند نقل ملفات تعريف eSIM من منفذ إلى آخر، ننصح شركات الاتصالات بتوفير الدعم لما يلي:

  • ربط سلس بين رقم IMEI ورقم SIM
  • بطاقات ICCID أو شرائح SIM متعددة لكل معرّف eUICC (رقم تعريف الجهاز المضمّن (EID))