Birden fazla etkin profil

Android 13 veya sonraki sürümleri çalıştıran cihazlarda eUICC için birden çok etkin profili (MEP) destekler. Bu özellik, Birden fazla SIM kart alabilen tek bir eSIM çipi kullanarak çift SIM desteği profilidir ve aynı anda iki farklı operatöre bağlanabilir. Cihaz Üreticiler SoC satıcıları ve eSIM yonga setiyle çalışmalıdır satıcılarının bu özelliği cihazlarına entegre etmesini kolaylaştırabilir.

Arka plan

Android 12 ve önceki sürümleri çalıştıran cihazlarda AOSP, Tek bir eSIM'in farklı profilleri desteklemesine izin verme konusunda sınırlı destek anlamına gelir. eSIM'in sunduğu önemli alan ve maliyet tasarrufuna rağmen, Çift SIM desteğinin olmaması, cihaz üreticilerinin yalnızca eSIM'i cihazlar. Yalnızca eSIM'i kullanılabilen bir cihazda çift SIM desteği sağlamak için Üreticilerin cihaza iki eSIM öğesi yerleştirmesi gerekir. Bu da malzeme faturası (BOM) maliyetleri ve abonelik açısından kötü bir kullanıcı deneyimine yol açıyor. üzerine konuşalım. AOSP'de kullanılabilen MEP özelliği Android 13 bu sorunu ele alır.

eUICC mimarisi

Bu bölümde, farklı Android sürümleri ve eSIM çipi mimarisiyle ilgili Parlamento Hükümeti

Android 14

Android 14 veya sonraki sürümleri çalıştıran cihazlarda MEP-A1 ve MEP-B'yi destekler kartı veren kuruluşun güvenlik alan adı kökü (ISD-R) ve belirtilen şekilde eSIM bağlantı noktalarının seçilmesi GSMA SGP V22 3.0. Aşağıda, MEP-A1 ve MEP-B ISD-R seçim modelleri açıklanmaktadır.

  • MEP-A1: ISD-R, bağlantı noktası 0'dan seçildi (komut bağlantı noktası 0'dır) ve profilleri, eSIM bağlantı noktası 1 ve üzeri bağlantı noktalarında seçilidir. ES10 komutları her zaman bağlantı noktası 0'a gönderilmiştir. Komut bağlantı noktası ve hedef bağlantı noktası her zaman farklıdır. Bağlantı noktasını LPA seçer.

    MEP-A1 ISD-R seçim modeli

    Şekil 1. MEP-A1 ISD-R seçim modeli

  • MEP-B: Herhangi bir bağlantı noktasından ISD-R seçilir ve herhangi bir bağlantı noktasına bir seçin. Etkinleştirme ve devre dışı bırakma komutları, profilinin etkinleştirilmesi veya devre dışı bırakılması gerekir (yenileme işlemi beklemede). İlgili içeriği oluşturmak için kullanılan komut bağlantı noktası ile hedef bağlantı noktasının daima aynıdır.

    MEP-B ISD-R seçim modeli

    Şekil 2. MEP-B ISD-R seçim modeli

Android 13

Android 13 veya sonraki sürümlerde MEP'yi destekleyen cihazlarda eSIM yuvasında birden fazla eUICC bağlantı noktası var. Bu bağlantı noktasında seçin. Şekil 3'te gösterildiği gibi bu mimariyle, tek bir eUICC (tek bir fiziksel yuva), her bir eUICC bağlantı noktasına sahip olduğundan çift SIM çift bekleme özelliğini (DSDS) destekler bağlayabilirsiniz. Android 13 HAL ve API'ler: MEP varyantı bağımsızdır.

MEP destekli eSIM çip mimarisi

Şekil 3. MEP destekli eSIM çipi mimarisi (Android 13 veya sonraki sürümler)

Android 12 ve önceki sürümler

Şekil 4'te gösterildiği gibi, MEP içermeyen Android 12 veya önceki sürümleri çalıştıran cihazlar için eSIM yuvası aynı anda yalnızca tek bir etkin profili ve cihazı destekler Search Ads 360'ı desteklemez.

MEP desteği olmayan eSIM çip mimarisi

Şekil 4. MEP desteği olmayan eSIM çipi mimarisi (Android 12 veya daha düşük)

Birden fazla etkin profil için API bilgi akışı

Şekil 5'te eUICC için MEP'ye ilişkin bilgi akışı açıklanmaktadır Android 13. Telefon çerçevesi şunları içerir: eUICC'deki fiziksel yapıyı temsil eden UiccPort sınıfı. İlgili içeriği oluşturmak için kullanılan UiccPort sınıfı tüm SIM kart türleri için kullanılır: fiziksel SIM (pSIM), entegre SIM (iSIM) ve yerleşik SIM (eSIM). Birden çok eUICC için bağlantı noktaları, tek bir UiccSlot nesnesi ve UiccCard nesnesi birden çok UiccPort örneği. Her UiccPort örneği en fazla bir tanesine bağlanabilir UiccProfile örneği. Bu akış, UiccPort ürününün mantıksal bir alanla eşlemesine ve UiccSlot (fiziksel slot) kullanarak birden fazla mantıksal alanı eşleyin.

MEP bilgi akışı

5. Şekil. MEP destekli eUICC için bilgi akışı

Uygulama

Bu bölümde, ayrıntılarla birlikte MEP özelliğinin nasıl uygulanacağı açıklanmaktadır. HAL gereksinimleri, API'ler ve kullanıcı arayüzü hakkında daha fazla bilgi edinin. Cihaz üreticileri, MEP'yi desteklemek için SoC satıcıları ve eSIM yonga seti tedarikçileriyle birlikte çalışmalıdır.

HAL gereksinimleri

eUICC için MEP'yi desteklemek üzere aşağıdaki IRadio AIDL HAL API'lerini uygulayın: bir listesini oluştur: /platform/hardware/interfaces/radio/aidl/aidl_api.

Android 14 veya sonraki sürümleri çalıştıran cihazlar, HAL'nin IRadio 2.1 sürümünü kullanmalıdır birbirine çok benzer MultipleEnabledProfileMode (modem veya eUICC tarafından desteklenen ISD-R seçim modeli) ve ES10 APDU'yu geçmelidir komut bilgilerini kullanarak API'nin çalıştırılmasına neden olabilir.

Kart Durumu

Modem CardStatus getIccCardStatusResponse yöntemidir. Yanıt, bağlantı noktası dizinini ve fiziksel alan dizinini içermelidir belirtilen SimPortSlotMapping.

Android 14 veya sonraki sürümleri çalıştıran cihazlarda modem desteklenen hızlı MEP modu tüm CardStatus etkinliğinde kullanabilirsiniz.

SimSlotStatus

Modem SimSlotStatus getSimSlotsStatus yöntemidir. SIM yuvası durumu, SimPortInfo ve bağlantı noktası dizinini, etkinleştirilmiş profilin ICCID'sini ve bağlantı noktası durumunu ayarlayabilirsiniz. Modem en az iki SimPortInfo nesnesi döndürmelidir.

Android 14 veya sonraki sürümleri çalıştıran cihazlarda modem desteklenen hızlı MEP modu tüm CardStatus etkinliğinde kullanabilirsiniz.

setSimSlot Eşleme

İlgili içeriği oluşturmak için kullanılan setSimSlotMapping yöntemi, SimPortSlotMapping. Dizinin dizini mantıksal alan ve SimPortSlotMapping, ilgili eşlenen bağlantı noktasını ve fiziksel yuvayı belirtir dizin. setSimSlotMapping yöntemi, bağlantı noktalarından mantıksal değerine eşlemeyi ayarlar yuvalar. LPA uygulaması bu yöntemi kullanarak etkin bağlantı noktasını seçin.

eUICC için MEP'yi destekleyen API'ler

AOSP kapsamında birden fazla etkin profili destekleyen Android cihazlar telefon yığınının aşağıdaki API'leri desteklemesi için gereklidir.

UiccCardBilgisi

  • (Android 13 ve sonraki sürümler) isMultipleEnabledProfilesSupported : Bu UICC'nin MEP'yi destekleyip desteklemediğini döndürür.
  • (Android 13 ve sonraki sürümler) getPorts: İadeler Belirli bir UICC için mümkün olan tüm bağlantı noktalarının listesini UICC bir pSIM ise veya eSIM ya da MEP'yi desteklemeyen eSIM, bir öğeli liste döndürür.
  • (Kullanımdan kaldırıldı) getIccId: ICCID döndürür. Bir UICC'de cihazlar için birden fazla ICCID olabileceği için bunun yerine UiccPortInfo.getIccId() kullanın.

(Android 13 ve sonraki sürümler) UiccPortInfo

  • getIccId: Bu bağlantı noktasında etkinleştirilmiş bir abonelik varsa ICCID'yi döndürür.
  • getPortIndex: Bağlantı noktası dizinini döndürür.
  • getLogicalSlotIndex: Etkin mantıksal modem yığın dizinini döndürür.

Abonelik Bilgileri

  • (Android 13 ve sonraki sürümler) getPortIndex: Aboneliğin etkinleştirildiği bağlantı noktası dizinini döndürür. Öğe abonelik devre dışı bırakıldı, INVALID_PORT_ID -1 değerini döndürür.

Kullanıcı Adı Yöneticisi

  • switchToSubscription: Belirli bir aboneliğe geçiş yapar. Operatörü olmayan uygulamalar tarafından kullanılıyor ayrıcalıklarından yararlanabilirsiniz. Çağrı yapıldığında platform bağlantı noktası dizinini üç seçenekli bir seçimle dahili olarak çözümler iletişim kutusu kullanılabilir bağlantı noktası yoksa seçili etkin aboneliği devre dışı bırakın. Android 13 ve sonraki sürümleri hedefleyen uygulamalar, bu API'yi kullanarak bir aboneliği devre dışı bırakmak için geçersiz abonelik kimliği; bunun yerine switchToSubscription yöntemini (Android 13'te eklenmiş olan) bağlantı noktası diziniyle belirtiliyor.
  • (Android 13 ve sonraki sürümler) switchToSubscription(int subscriptionId, int portIndex, PendingIntent callback): Belirli bir aboneliğe geçiş yapar. Operatör ayrıcalığı olan uygulamaları arama etkin abonelikler hangi bağlantı noktasının aboneliğin etkinleştirileceğini belirtebilir beklemeye gerek yoktur.
  • (Android 13 ve sonraki sürümler) isSimPortAvailable: Geçen bağlantı noktası dizininin kullanılabilir olup olmadığını döndürür. Bağlantı noktası mevcut abonelik etkin değilse veya arama uygulamasının operatör ayrıcalığı varsa Bu işlem, seçilen bağlantı noktasında yüklü olan abonelik üzerinden yapılıyor.

Euicc Hizmeti

  • (Android 13 ve sonraki sürümler) onSwitchToSubscriptionWithPort: Belirli bir bağlantı noktasında belirli bir aboneliğe geçiş yapar. LPA uygulaması , Android 13 ve sonraki sürümlerde bunu desteklemelidir.

Telefon Yöneticisi

Kullanıcı arayüzü

eSIM bağlantı noktası seçimindeki belirsizliği çözmek için MEP'yi destekleyen cihazlarda Kullanıcıların yeni bir aboneliği etkinleştirmek için etkin aboneliklerden birini devre dışı bırakabilmesi abonelik. Android 13'te AOSP, bir kullanıcı işlemleri akışı içerir. üç seçenekli iletişim kutusu Kullanıcı işlemleri akışlarını etkinleştiren abonelik işlemleri için Ayarlar uygulamasından Şekil 6'da bu kullanıcı deneyimi akışının bir örneği gösterilmektedir.

MEP SIM aboneliği için kullanıcı işlemleri akışı

6. Şekil. SIM aboneliğini etkinleştirmek için kullanıcı işlemleri akışı

Özellik işaretleri

Cihazların MEP'yi desteklemek için aşağıdaki özellik bayraklarını beyan etmesi gerekir:

LPA uygulaması

MEP'yi desteklemek için LPA aşağıdaki şartları karşıladığını unutmayın:

  • EuiccService'teki API'leri uygular birden fazla bağlantı noktasını destekler.
  • Bağlantı noktası seçimi ve profil etkinleştirme için API'leri kullanır.
  • Operatör uygulamalarının, seçili bağlantı noktalarında profilleri etkinleştirmesine olanak tanıyan kullanıcı deneyimi sunar.

Doğrulama

MEP özelliğini uygulamanızı test etmek için derlemelerin aşağıdaki CTS test durumları (herkese açık API'ler için): /platform/cts/tests/tests/telephony/current/src/android/telephony/euicc/cts.

Cihaz üreticileri modemleri, eUICC çipi ve eSIM OS ile de çalışmalıdır. tedarikçi firmalarının şunları yapabildiğinden emin olun:

  • İki eSIM profili etkinleştirilebilir ve iki farklı ağa bağlanabilir.
  • eSIM profilleri, herhangi bir eSIM bağlantı noktasında etkinleştirilip devre dışı bırakılabilir.
  • Operatör uygulaması tarafından tetiklenen bir kullanıcı deneyimi akışı, kullanıcıların geçiş yapmasına izin veriyor. profil.

Kargo şirketleri için öneri

Bir cihazdan eSIM profili taşıyan kullanıcıların hizmeti kaybetmemesi için taşımak istiyorsanız, operatörlerin aşağıdakiler için destek sağlamalarını öneririz:

  • IMEI ve SIM'in değişken eşlemesi
  • Her eUICC tanımlayıcısı (EID) için birden fazla ICCID veya SIM