Android 12'den itibaren Android, TS.43 Hizmet Kullanım Hakkı Yapılandırması'nı destekler. Bu GSMA spesifikasyonu, kablosuz ağ üzerinden ses (VoWiFi), LTE üzerinden ses (VoLTE), IP üzerinden SMS (SMSoIP), eSIM tamamlayıcı cihazların (istem cihazıyla ilişkili) cihaz üzerinde hizmet etkinleştirmesi (ODSA) ve veri planı bilgilerini içeren hizmetlerin etkinleştirilmesi için uygunluk doğrulama adımını tanımlar.
Android, bu spesifikasyonu desteklemek için servis sağlayıcının mobil cihazları IP Multimedya Alt Sistemi (IMS) ağ hizmetlerinin durumu hakkında bilgilendirmesine olanak tanıyan bir IMS hizmet hakkı özelliği sağlar. Bu hak özelliği, cihazın IMS hak durumu için GSMA TS.43 spesifikasyonu tarafından tanımlandığı şekilde operatör hak sunucusuna EAP-AKA kimlik doğrulamasını kullanarak sorgu göndermesine olanak tanır. Bu durumda kullanıcıların kimlik bilgilerini manuel olarak girmesi gerekmez.
IMS hak sunucusu olan operatörler, hizmet sağlama için IMS hizmet hakkı özelliğini kullanabilir. Bu özelliği kullanmanın avantajları şunlardır:
- Bu uygunluk özelliği birden fazla üründe ve OEM'de kullanılabildiğinden operatörler için test ve sertifika maliyetlerini azaltır.
- Standart bir Android uygulaması aracılığıyla cihaz üreticilerinin geliştirme maliyetini azaltır.
- Açık kaynak olduğu için cihaz üreticilerinin ve operatörlerin özellik için kod katkısında bulunmasına olanak tanır.
- Kuzey Amerika'daki operatörler için acil durum adresi yönetimi sağlar.
GMS iş ortakları:
TS.43 spesifikasyonunu desteklemeyen operatörler için GMS iş ortakları, IMS ağ hizmetlerini sağlamak amacıyla GMS cihazlarda ayrı bir uygulama olarak bulunan WFC etkinleştirme uygulamasını kullanabilir.
IMS hizmetine uygunluk özelliğiyle ilgili özellik istekleriniz varsa Google temsilcinizle iletişime geçin veya gms-connectivity-apps@google.com adresine e-posta gönderin.
Mimari
Aşağıdaki şekilde, IMS hizmetine erişim hakkı özelliğinin mimarisi ve davranışı açıklanmaktadır.
Şekil 1. TS.43 hak özelliği mimarisi
Şekil 1'de gösterildiği gibi, IMS hizmet uygunluğu özelliğinin mimarisi aşağıdaki bileşenleri içerir:
service_entitlement
TS.43 Hizmet API'si statik kitaplığı: Bu kitaplık, TS.43 spesifikasyonunu uygular, operatörün uygunluk sunucusuyla etkileşim kurar ve her TS.43 kullanım alanı için uygulamaya yönelik API'ler sunar.ImsServiceEntitlement
istemci uygulaması: Bu uygulama, TS.43 Hizmeti API'sini kullanır. Uygulama, kullanıcıların hizmetleri etkinleştirmesi için operatörün hizmet portalını oluşturmaya yönelik web görünümleri de dahil olmak üzere kullanıcı arayüzü öğeleri uygular ve kullanıcı deneyimini uçtan uca yönetmek için diğer Android bileşenleriyle etkileşim kurar.Android'in bir operatörün TS.43 tabanlı hak sunucusu ile çalışacak şekilde yapılandırılması hakkında daha fazla bilgi için ImsServiceEntitlement uygulaması başlıklı makaleyi inceleyin.
Şekil 1'deki numaralı çizgiler, IMS hizmet uygunluk özelliğinin bileşenlerinin birbirleriyle nasıl iletişim kurduğunu gösterir. Aşağıda, etiketli olarak adımların her biri açıklanmaktadır:
(1) İstemci uygulaması, hizmet uygunluk isteği başlatmak için TS.43 hizmet API'sini çağırır.
(2) TS.43 hizmet API'si, EAP-AKA isteminde bulunmak için operatörün hak talebi sunucusuna bir HTTP isteği gönderir.
(3) TS.43 hizmet API'si, EAP-AKA istem-yanıt işlemini tamamlamak için telefon API'lerini (ör. getIccAuthentication
) çağırır.
(4) TS.43 hizmeti, EAP-AKA yanıtı doğrulandıktan sonra operatörün hak sunucusu tarafından hizmet hakkı veya yapılandırma verileri alır.
(5) TS.43 hizmeti, istemci uygulamasına hizmet hakkı veya yapılandırma verilerini döndürür.
(6) İstemci uygulaması verileri işler ve kullanıcının hizmet etkinleştirme işlemini tamamlaması için isteğe bağlı olarak operatörün hizmet portalını oluşturur.
Entegrasyon
Bu bölümde, service_entitlement
kitaplığının ve ImsServiceEntitlement
uygulamasının entegrasyon süreci açıklanmaktadır.
Android 12 API bağımlılığı olmadığından service_entitlement
kitaplığı ve ImsServiceEntitlement
uygulaması eski Android platformlarına geri bağlanabilir.
service_entitlement kitaplığı
service_entitlement
kitaplığı ImsServiceEntitlement app
'a statik olarak bağlı olduğundan kitaplığı ImsServiceEntitlement
uygulamasına entegre etmek için ek adımlar gerekmez.
service_entitlement
kitaplığı, veri planı ve ODSA gibi TS.43 kullanım alanları için kendi uygulamalarınızla entegre edilebilir. Kitaplık, EAP-AKA protokolüne dayalı TS.43 olmayan yetkilendirme kullanım alanları için bir uygulamaya da entegre edilebilir.
Aşağıda, bu tür kullanım alanları için kullanılacak API'ler açıklanmaktadır:
- Kitaplıkta uygulanan TS.43 HTTP protokolünü kullanan TS.43 uygulaması:
ServiceEntitlement
sınıfındaki API'leri kullanın - Kitaplıkta uygulanan EAP-AKA protokolünü kullanan TS.43 olmayan uygulama:
EapAkaHelper
sınıfında sunulan API'leri kullanın
GMS iş ortakları: Aşağıda, service_entitlement kitaplığının Android 12'de test edildiği TS.43 hak sunucusu tedarikçi firmaları verilmiştir.
- Ericsson
- HPE
- Nokia
ImsServiceEntitlement uygulaması
Android, varsayılan olarak ImsServiceEntitlement
uygulamasını ürün bölümüne ayrıcalıklı bir uygulama olarak yükler. Uygulamayı yapılandırmak için aşağıdaki CarrierConfig anahtarlarını kullanın:
Anahtar | Değer |
---|---|
KEY_ENTITLEMENT_SERVER_URL_STRING |
Operatörün yararlanma hakkı sunucusu URL'si. https:// ön eki eklenmelidir. |
KEY_FCM_SENDER_ID_STRING |
Operatörün FCM gönderen kimliği. Kargo şirketi tarafından FCM gerekli değilse bu değeri ayarlamayınız. |
KEY_SHOW_VOWIFI_WEBVIEW_BOOL |
Operatör, kullanıcıların VoWiFi hizmetine kaydolması için bir web portalı kullanıcı arayüzü gerektiriyorsa true olarak ayarlayın. Örneğin, hükümler ve koşullara izin verme veya acil durum adresi girme.Bu, genellikle Kuzey Amerika'daki operatörler tarafından zorunlu tutulur. |
KEY_WFC_EMERGENCY_ADDRESS_CARRIER_APP_STRING |
KEY_SHOW_VOWIFI_WEBVIEW_BOOL true ise com.android.imsserviceentitlement/.WfcActivationActivity olarak ayarlayın. |
KEY_IMS_PROVISIONING_BOOL |
Operatör, arka planda IMS (VoLTE/VoWiFi/SMSoIP) hizmetlerinin ağda temel hazırlığı yapılmasını gerektiriyorsa true olarak ayarlayın.Bu, belirli Avrupalı taşıyıcılar tarafından zorunlu kılınmıştır. |
KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL |
KEY_IMS_PROVISIONING_BOOL true ise true olarak ayarlayın. |
Bir operatörün hak sunucusu ve web portalına giden HTTP trafiği, varsayılan ağ (ör. varsayılan mobil veri veya kablosuz ağ) üzerinden gider.
GMS iş ortakları: Android 12'deki TS.43 hak talebi uygulaması, TS.43 sürüm 5.0 spesifikasyonuna uygun olarak aşağıdaki operatörleri destekler:
- ABD: CSpire, US Cellular, Cellcom
- Fransa: Orange
IMS temel hazırlığı için ek sistem kullanıcı arayüzü
Bu bölümde, OEM'lerin IMS hizmet sağlamayla ilgili ek sistem kullanıcı arayüzü öğelerini (ör. VoWiFi için temel hazırlığı yaparken bildirim gösterme) nasıl destekleyebileceği açıklanmaktadır.
ImsServiceEntitlement
uygulaması, ProvisioningManager.setProvisioningIntValue(KEY_VOICE_OVER_WIFI_ENABLED_OVERRIDE,
value)
sistem API'sini kullanarak VoWiFi temel hazırlığı durumunu platformda ayarlar. Bu API, VoLTE (KEY_VOLTE_PROVISIONING_STATUS
ile) ve SMSoIP (KEY_SMS_OVER_IP_ENABLED
ile) için de kullanılır.
Sistem kullanıcı arayüzü daha sonra getProvisioningIntValue
kullanarak veya registerProvisioningChangedCallback
aracılığıyla temel hazırlama durumu değişikliğini izlemek için geri çağırma işlevi kaydederek temel hazırlama durumunu okuyabilir.
Test için yapılandırmaları geçersiz kılma
Test amacıyla ImsServiceEntitlement
uygulamasının davranışını geçici olarak değiştirmek için aşağıdaki prosedürleri uygulayın. Operatör yapılandırmalarının nasıl geçersiz kılınacağı hakkında ayrıntılı bilgi için Operatör yapılandırmalarını geçersiz kılma başlıklı makaleyi inceleyin.
VoWiFi kayıt işlemini atlama
VoWiFi kayıt sürecini atlayarak VoWiFi'nin doğrudan etkinleştirilmesine izin vermek için operatör yapılandırmasını KEY_WFC_EMERGENCY_ADDRESS_CARRIER_APP_STRING
geçersiz kılın ve değerini boş dize olarak ayarlayın.
IMS temel hazırlığını atlama
IMS temel hazırlığını atlamak, IMS hizmetlerini kullanıma sunmak ve kullanıcıların ağ temel hazırlığı yapmadan bu hizmetleri etkinleştirmesine izin vermek için operatör yapılandırmasını KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
geçersiz kılın ve değerini false
olarak ayarlayın.
Yararlanma hakkı sunucusu URL'sini değiştirme
Hak sunucusu URL'sini değiştirmek için operatör yapılandırmasını KEY_ENTITLEMENT_SERVER_URL_STRING
geçirin ve değerini beklenen URL dizesi olarak ayarlayın. https://
ön ekini eklemeniz gerekir.
Operatör yapılandırmalarını geçersiz kılma
Android 11'den itibaren operatör yapılandırma geçersiz kılma komutları yerleşik olarak bulunur ve root ayrıcalıklarıyla kullanılabilir.
Aşağıdaki komut, carrier_volte_provisioning_required_bool
operatör yapılandırma anahtarının nasıl geçersiz kılınacağını ve değerinin false
olarak nasıl ayarlanacağını gösteren bir örnektir. Birden fazla yapılandırmayı geçersiz kılmak için komutu birden çok kez çalıştırabilirsiniz.
adb root
adb shell cmd phone cc set-value -p carrier_volte_provisioning_required_bool false
Tüm geçersiz kılma işlemlerini temizlemek için aşağıdaki komutu kullanın:
adb shell cmd phone cc clear-values
Daha fazla bilgi edinmek için aşağıdaki komutu çalıştırın:
adb shell cmd phone cc