IMS Tek Kayıt

Android 12, MMTEL ve RCS özellikleri sağlamak için tek bir kayıt modeli desteği sunar. Bu model, cihazların tüm IMS özelliklerinin, cihazın IMSService tarafından sağlanan tek bir IMS kaydı aracılığıyla yönetilmesine ve bazı telekom operatörleri tarafından getirilen gereksinimlere uymasına olanak tanır. Birden çok IMS kaydının tek bir cihazda yönetildiği ikili kayıt modeliyle karşılaştırıldığında, tek kayıt, operatörün ağındaki trafiği azaltır ve güvenilirliği artırır.

Android 12, AOSP telefon yığınının hem ImsService tarafından sağlanan ImsService özelliklerini hem de kullanıcı tarafından seçilen RCS mesajlaşma uygulaması tarafından sağlanan RCS özelliklerini yönetmesine olanak tanıyan bir dizi API'li bir mimari aracılığıyla bu tek kayıt modelini destekler. IMS tek kaydını desteklemek için, cihaz üreticileri ve SoC satıcıları, kullanıcı tarafından seçilen RCS mesajlaşma uygulamasında RCS özelliklerini etkinleştirmek için bu API'leri uygulamalıdır.

Şekil 1, IMS tekli kayıt modelini kullanırken cihazın IMS yığınını gösterir. Tüm IMS uygulamaları, tek bir IMS kaydı üzerinden cihazın varsayılan MMTEL ve RCS özellikleri için ImsService'i kullanır. Bu, sağlama, SIP mesajı iletme ve RCS kullanıcı yetenek alışverişini içerir.

Tek kayıt modu mimarisi

Şekil 1. Tek kayıt modeli mimarisi

Android 11 ve altı, yalnızca MMTEL ve RCS özellikleri sağlamak için ikili bir kayıt modelini destekler; burada MMTEL, cihazın IMSService tarafından sağlanır ve RCS özellikleri üstten uygulanır ve kendi IMS yığınını ve taşıyıcının ağına olan bağlantısını bağımsız olarak yönetir.

Şekil 2, ikili kayıt modelinin mimarisini göstermektedir. Bu modelde her uygulama, operatörün ağına bağlanmaktan ve MMTEL ve RCS özellikleri için bir IMS kaydı oluşturmaktan sorumludur. Cihazın ImsService'i MMTEL'i uygular, cihazın operatör ağına IMS veri bağlantısını kullanır ve diğer RCS uygulamalarından bağımsız olarak çalışır.

çift ​​kayıt modu mimarisi

Şekil 2. İkili kayıt modeli mimarisi

IMS tek kayıt API'leri

IMS tekli kayıt gerektiren taşıyıcılar arasında değişen cihazlar, IMS tekli kayıt API'lerini desteklemeli ve PackageManager#FEATURE_TELEPHONY_IMS_SINGLE_REGISTRATION Android özelliğini tanımlamalıdır. Şekil 3, IMS tek kaydını destekleyen API'leri gösterir.

IMS tek kaydını destekleyen API yüzeyleri

Şekil 3. IMS tek kaydını destekleyen üst düzey API yüzeyleri

AOSP telefon yığınının bir parçası olarak IMS tek kaydını destekleyen Android cihazların, aşağıdaki tabloda açıklanan tüm AOSP API'lerini desteklemesi gerekir.

API Yüzey Alanı RCS uygulama API'leri Satıcı IMS API'leri Tanım
RCS sağlama Sağlama Yöneticisi ImsConfigImplBase Bir OEM veya operatöre, operatör tescilli bir operatör yetkilendirme mekanizması kullanıyorsa, RCS sağlama durumunu güncellemek için bir uygulama sağlama izni verir. ImsService ayrıca tescilli bir mekanizma kullanmayan taşıyıcılar için provizyon sağlamak için standart AutoConfigurationServer'ı (ACS) desteklemelidir.
SIP mesaj yönlendirme SipDelegateYöneticisi SipTransportImplBase Bir RCS uygulamasının, önce belirli RCS özellik etiketlerini cihaz ImsService ile ilişkilendirmesine ve ardından bu RCS özellik etiketleriyle ilişkili SIP mesajları ve IMS kayıt güncellemeleri gönderip almasına izin verir.
Özel taşıyıcı bildirimleri Bağlantı Yöneticisi DataCallResponse Uygulamaya, belirli bir yerel bağlantı noktasıyla ilişkili bir sokette QoS bildirimlerini dinleme izni verir.
GBA kimlik doğrulaması bootstrapAuthenticationRequest Gba Hizmeti Bir RCS uygulamasının ağ ile kimlik doğrulaması yapmasına ve dosya aktarımı gibi RCS özellikleri için kullanılan erişim anahtarlarına izin verir.
RCS kullanıcı yetenek değişimi ImsRcsYöneticisi RcsCapabilityExchangeImplBase AOSP'ye MMTEL ve RCS yeteneklerini satıcı ImsService'e gönderme yeteneği sağlar, böylece bunlar tek bir varlık altında RCS kullanıcı yetenek alışverişi için ağa yayınlanabilir. Ayrıca, bir veya daha fazla kişinin RCS yetenekleriyle ilgilenen diğer uygulamaların, kişilerin RCS yetenekleri için ağı sorgulamasına izin verir.

Güvenlik ve izinler

Android 12, operatörün ağına ve kullanıcı verilerine güvenli erişim sağlamak için aşağıdaki izinleri sunar:

android.permission.PERFORM_IMS_SINGLE_REGISTRATION izni, RCS özelliklerine sahip mesajlaşma uygulaması tarafından tanımlanmalıdır. Bu iznin verilebilmesi için aşağıdakilerin doğru olması gerekir:

  • Uygulama, ayrıcalıklı bir uygulama olarak yüklenmelidir, yani cihaza önceden yüklenmiştir ve ayrıcalıklı izinlere erişmesine izin verilir.
  • Uygulama, RoleManager kullanılarak kullanıcının varsayılan SMS rolü olarak ayarlanmalıdır

Bu koşulların her ikisi de karşılanmazsa, uygulamanın android.permission.PERFORM_IMS_SINGLE_REGISTRATION iznine erişimi reddedilir. Bu, cihazda operatör sertifikası gerektirdiğinden, üçüncü taraf uygulamalarının RCS tekli kayıt API'lerine erişmesine izin verilmediği anlamına gelir.

READ_CONTACTS iznine de sahip bir uygulamaya verildiğinde android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE izni, uygulamanın RcsUceAdapter kullanarak telefon numaralarının RCS özelliklerini istemesine izin verir. Bu iznin verilebilmesi için aşağıdakilerin doğru olması gerekir:

  • Uygulama, ayrıcalıklı bir uygulama olarak yüklenmelidir, yani cihaza önceden yüklenmiştir ve ayrıcalıklı izinlere erişmesine izin verilir.
  • Uygulama, aşağıdaki RoleManager rollerinden biri olarak tanımlanmalıdır:

    • Varsayılan mesajlaşma uygulaması: Kullanıcı tarafından belirlenir.
    • Varsayılan çevirici uygulaması: Kullanıcı tarafından belirlenir.
    • Varsayılan kişiler uygulaması: Android 12'de tanıtılan ve OEM'in, cihazın kişiler uygulamasına karşılık gelmesi gereken cihaz yer paylaşımı değeri config_systemContacts aracılığıyla bir paket adı tanımlamasına olanak tanıyan bir rol. Bu uygulamaya daha sonra kişiler rolü verilir.

Veri trafiğini ayarlamak ve yönetmek üzere ConnectivityManager kullanarak IMS APN'ye erişmek için uygulamaların android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS iznini de istemesi gerekir.

Örnekler ve kaynak

Android, test ve geliştirme amaçları için temel RCS mesajlaşma desteğine sahip bir test mesajlaşma uygulaması uygulayan AOSP'de bir uygulama sağlar. Uygulamayı testapps/TestRcsApp adresinde bulabilirsiniz. Uygulama bir cihaza yüklendiğinde, kullanıcının varsayılan mesajlaşma uygulaması olarak ayarlanabilir ve IMS tekli kayıt API'lerine erişmek için gereken izinlere sahip olacaktır.

Android ayrıca RCS için ImsService'in örnek bir uygulamasını sağlar. Kaynak kodu /testapps/ImsTestService .

uygulama

Daha fazla uygulama ayrıntısı için Android'de IMS Tek Kaydı'nı indirin.

doğrulama

IMS tekli kayıt uygulamanızı doğrulamak için aşağıdakileri yapın:

  • CtsTelephonyTestCases CTS test paketinin geçtiğinden emin olun.
  • Entegrasyon sırasında temel tekli kayıt test senaryolarını çalıştırmak için TestRcsApp'i kurun ve çalıştırın.
  • IMS tek kayıt test durumları için taşıyıcı sertifikasını geçin.