Registrasi Tunggal IMS

Android 12 memperkenalkan dukungan model registrasi tunggal untuk menyediakan fitur MMTEL dan RCS. Model ini memungkinkan perangkat untuk memiliki semua fitur IMS yang dikelola melalui satu pendaftaran IMS yang disediakan oleh ImsService perangkat dan untuk mematuhi persyaratan yang diperkenalkan oleh beberapa operator telekomunikasi. Dibandingkan dengan model registrasi ganda, dimana beberapa registrasi IMS dikelola pada satu perangkat, registrasi tunggal mengurangi lalu lintas pada jaringan operator dan meningkatkan keandalan.

Android 12 mendukung model pendaftaran tunggal ini melalui arsitektur dengan serangkaian API yang memungkinkan tumpukan telepon AOSP mengelola fitur MMTEL yang disediakan oleh ImsService dan fitur RCS yang disediakan oleh aplikasi perpesanan RCS yang dipilih pengguna. Untuk mendukung pendaftaran tunggal IMS, produsen perangkat dan vendor SoC harus mengimplementasikan API ini untuk mengaktifkan fitur RCS di aplikasi pesan RCS yang dipilih pengguna.

Gambar 1 mengilustrasikan tumpukan IMS perangkat saat menggunakan model registrasi tunggal IMS. Semua aplikasi IMS menggunakan ImsService default perangkat untuk fitur MMTEL dan RCS melalui satu pendaftaran IMS. Hal ini mencakup penyediaan, penerusan pesan SIP, dan pertukaran kemampuan pengguna RCS.

Arsitektur mode registrasi tunggal

Gambar 1. Arsitektur model registrasi tunggal

Android 11 dan yang lebih rendah hanya mendukung model pendaftaran ganda untuk menyediakan fitur MMTEL dan RCS, di mana MMTEL disediakan oleh ImsService perangkat dan fitur RCS diimplementasikan secara berlebihan dan mengelola tumpukan IMS mereka sendiri serta koneksi ke jaringan operator secara mandiri.

Gambar 2 mengilustrasikan arsitektur model registrasi ganda. Dalam model ini, setiap aplikasi bertanggung jawab untuk menyambung ke jaringan operator dan membuat registrasi IMS untuk fitur MMTEL dan RCS. ImsService perangkat mengimplementasikan MMTEL, menggunakan koneksi data IMS perangkat ke jaringan operator, dan beroperasi secara independen dari aplikasi RCS lainnya.

arsitektur mode registrasi ganda

Gambar 2. Arsitektur model registrasi ganda

API pendaftaran tunggal IMS

Perangkat dengan jangkauan operator yang memerlukan pendaftaran tunggal IMS harus mendukung API pendaftaran tunggal IMS dan menentukan fitur Android PackageManager#FEATURE_TELEPHONY_IMS_SINGLE_REGISTRATION . Gambar 3 menunjukkan API yang mendukung registrasi tunggal IMS.

Permukaan API mendukung registrasi tunggal IMS

Gambar 3. Permukaan API tingkat tinggi yang mendukung registrasi tunggal IMS

Perangkat Android yang mendukung pendaftaran tunggal IMS sebagai bagian dari tumpukan telepon AOSP diharuskan mendukung semua API AOSP yang dijelaskan dalam tabel berikut.

Luas Permukaan API API aplikasi RCS API IMS Vendor Keterangan
penyediaan RCS Manajer Penyediaan ImsConfigImplBase Mengizinkan OEM atau operator menyediakan aplikasi untuk memperbarui status penyediaan RCS jika operator menggunakan mekanisme kepemilikan operator berpemilik. ImsService juga harus mendukung AutoConfigurationServer (ACS) standar untuk penyediaan bagi operator yang tidak menggunakan mekanisme kepemilikan.
Penerusan pesan SIP SipDelegateManager SipTransportImplBase Mengizinkan aplikasi RCS terlebih dahulu mengaitkan tag fitur RCS tertentu dengan perangkat ImsService , lalu mengirim dan menerima pesan SIP dan pembaruan pendaftaran IMS yang terkait dengan tag fitur RCS tersebut.
Pemberitahuan pembawa khusus Manajer Konektivitas Respon Panggilan Data Mengizinkan aplikasi mendengarkan notifikasi QoS pada soket yang terkait dengan port lokal tertentu.
Otentikasi GBA bootstrapAuthenticationRequest Layanan Gba Mengizinkan aplikasi RCS mengautentikasi dengan jaringan dan kunci akses yang digunakan untuk fitur RCS seperti transfer file.
Pertukaran kemampuan pengguna RCS Manajer ImsRcs RcsCapabilityExchangeImplBase Memberikan AOSP kemampuan untuk mengirimkan kemampuan MMTEL dan RCS ke vendor ImsService sehingga dapat dipublikasikan di bawah satu entitas ke jaringan untuk pertukaran kemampuan pengguna RCS. Juga memungkinkan aplikasi lain yang tertarik dengan kemampuan RCS dari satu atau beberapa kontak untuk menanyakan kemampuan RCS kontak pada jaringan.

Keamanan dan izin

Android 12 memperkenalkan izin berikut untuk memastikan akses aman ke jaringan operator dan data pengguna:

Izin android.permission.PERFORM_IMS_SINGLE_REGISTRATION harus ditentukan oleh aplikasi perpesanan dengan fitur RCS. Agar izin ini dapat diberikan, hal-hal berikut harus benar:

  • Aplikasi harus diinstal sebagai aplikasi dengan hak istimewa, artinya aplikasi tersebut sudah diinstal sebelumnya di perangkat dan diizinkan untuk mengakses izin istimewa
  • Aplikasi harus ditetapkan sebagai peran SMS default pengguna menggunakan RoleManager

Jika kedua ketentuan ini tidak terpenuhi, aplikasi tidak akan diberi akses ke izin android.permission.PERFORM_IMS_SINGLE_REGISTRATION . Artinya, aplikasi pihak ketiga tidak diizinkan mengakses API pendaftaran tunggal RCS karena aplikasi tersebut memerlukan sertifikasi operator pada perangkat.

Izin android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE bila diberikan kepada aplikasi yang juga memiliki izin READ_CONTACTS memungkinkan aplikasi meminta kemampuan RCS nomor telepon menggunakan RcsUceAdapter . Agar izin ini dapat diberikan, hal-hal berikut harus benar:

  • Aplikasi harus diinstal sebagai aplikasi dengan hak istimewa, artinya aplikasi tersebut telah diinstal sebelumnya di perangkat dan diizinkan untuk mengakses izin istimewa.
  • Aplikasi harus didefinisikan sebagai salah satu peran RoleManager berikut:

    • Aplikasi perpesanan default: Disetel oleh pengguna.
    • Aplikasi telepon default: Disetel oleh pengguna.
    • Aplikasi kontak default: Peran yang diperkenalkan di Android 12 yang memungkinkan OEM menentukan nama paket melalui nilai overlay perangkat config_systemContacts , yang harus sesuai dengan aplikasi kontak perangkat. Aplikasi itu kemudian diberi peran kontak.

Untuk mengakses APN IMS menggunakan ConnectivityManager guna menyiapkan dan mengelola lalu lintas data, aplikasi juga harus meminta izin android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS .

Contoh dan sumber

Android menyediakan aplikasi di AOSP yang mengimplementasikan aplikasi perpesanan pengujian dengan dukungan perpesanan RCS dasar untuk tujuan pengujian dan pengembangan. Anda dapat menemukan aplikasinya di testapps/TestRcsApp . Ketika aplikasi diinstal pada perangkat, aplikasi tersebut dapat ditetapkan sebagai aplikasi perpesanan default pengguna dan akan memiliki izin yang diperlukan untuk mengakses API pendaftaran tunggal IMS.

Android juga menyediakan contoh implementasi ImsService untuk RCS. Kode sumbernya ada di /testapps/ImsTestService .

Penerapan

Untuk detail implementasi lebih lanjut, unduh IMS Single Registration di Android .

Validasi

Untuk memvalidasi penerapan pendaftaran tunggal IMS Anda, lakukan hal berikut:

  • Pastikan rangkaian pengujian CtsTelephonyTestCases CTS lulus.
  • Instal dan jalankan TestRcsApp untuk menjalankan kasus uji registrasi tunggal dasar selama integrasi.
  • Lulus sertifikasi operator untuk kasus uji registrasi tunggal IMS.