APN dan CarrierConfig

Operator dapat memperbarui informasi Nama Poin Akses (APN) dan setelan konfigurasi khusus operator (CarrierConfig) dalam Proyek Open Source Android (AOSP).

Akun Google dengan alamat email perusahaan Anda

Untuk memperbarui informasi APN atau CarrierConfig, Anda memerlukan untuk mengirim permintaan menggunakan Akun Google dengan email perusahaan yang aktif (misalnya, permintaan pembaruan APN dari Perusahaan Acme harus berasal dari alamat email Anda, seperti foobar@acme.com).

Jika Anda tidak memiliki Akun Google yang ditautkan ke email perusahaan Google, logout dari semua akun Gmail dari browser Anda (sebaiknya gunakan fitur penjelajahan rahasia, seperti jendela samaran, untuk menghindari kebingungan dengan akun Anda yang lain), lalu buat akun dengan alamat email perusahaan Anda.

Menyiapkan lingkungan pengembangan lokal

Jika Anda belum pernah mengirimkan kode ke AOSP sebelumnya, Anda akan perlu melakukan inisialisasi lingkungan build, membiasakan diri dengan alat tersebut, dan memahami cara mengirimkan patch:

Selain itu, sebaiknya Anda menggunakan Issue Tracker Google untuk memantau perubahan.

Laporkan bug

  1. Buka issuetracker.google.com dan login menggunakan alamat email perusahaan Anda (lihat Akun Google dengan alamat email perusahaan Anda).
  2. Setelah login, klik Create issue di sebelah kiri layar.
  3. Di Komponen, pilih Android Public Tracker > Kerangka Kerja
  4. Lanjutkan ke APN update atau Pembaruan OperatorConfig, jika sesuai, untuk memasukkan Judul dan Deskripsi.

Bug APN

Setel atribut bug sebagai berikut:

Judul: Menambahkan/Mengubah/Menghapus APN untuk OperatorXYZ

Deskripsi: Tambahkan deskripsi mendetail tentang perubahan yang Anda permintaan, termasuk setelan APN itu sendiri.

Bug CarrierConfig

Setel atribut bug sebagai berikut:

Judul: Perubahan konfigurasi untuk OperatorXYZ

Deskripsi: Tambahkan deskripsi mendetail tentang perubahan yang Anda diminta.

Kirim Perubahan

Untuk melakukan perubahan:

  1. Identifikasi file yang akan diubah.
  2. Buat perubahan pada file.
  3. Commit perubahan ke repositori lokal Anda dengan mengikuti petunjuk untuk mengirimkan patch, memperhatikan pedoman pesan commit, termasuk format yang direkomendasikan.
  4. Setelah Anda menyimpan perubahan ke histori pribadi, upload perubahan tersebut ke Gerrit menggunakan perintah repo upload.
  5. Setelah upload berhasil, repo menyediakan URL halaman baru di Gerrit. Gunakan URL ini untuk:
    • Melihat patch di server peninjauan
    • Menambahkan komentar
    • Meminta peninjau khusus untuk patch Anda

Sintaksis APN

Nama project Android - perangkat/contoh

Nama file - etc/apns-full-conf.xml (Google Link utama Git)

File ini berisi setelan APN dalam format XML dan berfungsi sebagai file contoh sehingga tidak ada perubahan perilaku perangkat Android.

Konfigurasi APN umum terlihat seperti ini:

<apn carrier="CarrierXYZ"
      mcc="123"
      mnc="123"
      apn="carrierxyz"
      type="default,supl,mms,ims,cbs"
      mmsc="http://mms.carrierxyz.com"
      mmsproxy="0.0.0.0"
      mmsport="80"
      bearer_bitmask="4|5|6|7|8|12"
/>

Pengujian

  1. Hubungkan perangkat Android apa pun yang akses root-nya Anda miliki.
  2. Tambahkan setelan ke {i> /etc/apns-conf.xml<i}.
  3. Reset setelan APN.
  4. Di setelan APN, pastikan profil dimuat dengan benar.
  5. Untuk setiap profil, uji konektivitas data, hotspot Wi-Fi, dan MMS untuk memastikan bahwa keduanya bekerja dengan benar.

Pesan commit

[Example - "Add CarrierXYZ apns to sample apns"]
Bug: [Issue ID from Google Issue Tracker]
Test: No change to behavior as this is only a sample file

Contoh CL

Lihat Contoh BICS APNs untuk contoh CL.

Sintaksis CarrierConfig

Nama project - platform/packages/apps/CarrierConfig

Nama file - assets/carrier_config_.xml (Google Link utama Git)

Identifikasi file XML yang relevan di folder aset menurut MCC/MNC yang relevan tuple. File ini berisi objek konfigurasi operator dalam format XML. Tujuan nama atribut ditentukan sebagai kunci di bawah CarrierConfigManager, dan jenis nilai (int/string/bool) ditunjukkan dengan akhiran.

Atribut int/string/bool umum terlihat seperti ini:

<int name="vvm_port_number_int" value="5499" />
<string name="vvm_type_string">vvm_type_omtp</string >
<boolean name="vvm_cellular_data_required_bool" value="true" />

Pesan commit

[Example - "Add VVM settings for CarrierXYZ"]

[Example - "Updated <mccmnc> carrier config file to include VVM settings
as defined by CarrierXYZ."]

Bug: [Issue ID from Google Issue Tracker]
Test: [Testing notes]

Contoh CL

Lihat file konfigurasi operator yang diperbarui untuk contoh CL.

Minta peninjauan

Untuk meminta peninjauan:

  • Buka URL Gerrit perubahan Anda dan tambahkan android-carrier-config-review@google.com sebagai peninjau.
  • Anda juga dapat menambahkan kontak Google Anda ke daftar CC di Gerrit.
  • Untuk tujuan pelacakan, Anda dapat mengubah penerima masalah menjadi android-carrier-config-review@google.com.

Setelah kiriman masuk melalui proses peninjauan dan verifikasi, Gerrit secara otomatis menggabungkan perubahan ke dalam repositori publik. Pengguna lain dapat menjalankan repo sync untuk mengambil update ke klien lokal mereka.