Taşıyıcı Kimliği

Android 9 çalıştıran cihazlar, bir kimlik ve bir operatör adı sağlamak için abonelik operatör bilgilerini tanıyabilir. Android, her operatör ve benzersiz operatör kimliği için eşleşen kurallara sahip bir operatör kimliği veritabanı tutar. AOSP, taşıyıcı kimliği veritabanının içeriğini taşıyıcı_liste.textpb dosyasında carrier_list.textpb . Birleşik veritabanı, taşıyıcıları tanımlaması gereken uygulamalarda yinelenen mantığı en aza indirir ve taşıyıcıyı tanımlayan özelliklerin açığa çıkmasını sınırlar.

Android, operatör tanımlamasının kapsamını ve doğruluğunu iyileştirmek için bant dışı ve operatör kimliği tablosu güncellemelerini destekler. Her güncelleme bir sürüm numarası ile birlikte gelir ve AOSP'de yayınlanır.

uygulama

Bant dışı güncellemeleri uygulamak isteyen kullanıcılar, carrier_list.pb ikili dosyasını indirebilir. Tablonun okunabilir biçimini görüntülemek için, bkz. carrier_list.textpb .

Taşıyıcı kimliği tablosunu cihazın /data/misc/carrierid/ veri bölümüne yerleştirin. Taşıyıcı kimliği tablosu mevcut sürümden daha yeniyse cihaz, tabloyu taşıyıcı kimliği veritabanı sınıfında sürdürür . Taşıyıcı kimliği veritabanından en son bilgiler, genel yöntemler getSimCarrierId() ve getSimCarrierIdName() tarafından alınır.

Veritabanına taşıyıcı kimliği bilgisi ekleme

Veritabanına bir taşıyıcı kimliği eklemek veya güncellemek için Taşıyıcı kimlik bilgileri formunu kullanarak bir istek gönderin.

İsteğiniz incelenir ve onaylanırsa değişiklik, taşıyıcı_list.pb adresindeki carrier_list.pb kod tabanına gönderilir. Ardından güncellenmiş listeyi kopyalayabilir ve özelleştirilmiş yapınıza dahil edebilirsiniz.

Taşıyıcı kimliklerini CarrierConfig ile entegre etme

Android 10'dan başlayarak, taşıyıcı yapılandırması , taşıyıcıya özel yapılandırmaları CarrierService almak için anahtar olarak taşıyıcı kimliklerinin kullanılmasını destekler.

Taşıyıcı kimliklerini CarrierConfig ile entegre etmenin aşağıdaki avantajları vardır:

  • Yinelenen veya tutarsız verileri kaldırarak her taşıyıcı için tüm MCC/MNC çiftlerini tek bir konumda birleştirir.
  • Her taşıyıcı için kurallı bir tanımlayıcı oluşturur ve belirsizliği ortadan kaldırır.
  • Mobil sanal ağ operatörlerinin (MVNO'lar) bir mobil ağ operatörünün (MNO) parçası olarak konfigürasyonlara sahip olmak yerine bireysel kimliklerle tanımlanmasına izin verir.

Yapılandırma verilerini taşıyıcı kimliklerine taşıma

Yapılandırma verilerini MCC/MNC çiftlerinden taşıyıcı kimliklerine taşımak için şu adımları izleyin:

  1. Tek bir taşıyıcıdan gelen taşıyıcı_config_mccmnc.xml dosyalarını birlikte carrier_config_mccmnc.xml . MCC, MNC ve carrier_list.textpb bilgilerini belirli bir taşıyıcıyla eşleştirmek için taşıyıcı_list.metnipb'yi referans olarak kullanın.

  2. Yapılandırmaları tek bir dosyada birleştirin.

  3. (İsteğe bağlı) MNO'lardan veri devralın. MVNO'lar, eski carrier_config_mccmnc.xml dosyasındaki MNO'lardan yapılandırmaları devralır. Taşıyıcı kimlikleri, MVNO'lar dahil tüm taşıyıcıların özel bir yapılandırma dosyasına sahip olmasına izin verdiğinden, taşıma sırasında MNO verilerinin dahil edilmesi önerilir.

  4. Bir MVNO taşıyıcı kimliği yapılandırması yoksa, yapılandırmayı getCarrierIdFromSimMccMnc kullanarak MNO taşıyıcı kimliğinden alın.

  5. Yeni dosyayı carrier_config_carrierid_ carrierid _ carriername .xml olarak yeniden adlandırın, burada taşıyıcı kimliği bir carrierid karşılık canonical_id ve carriername adı, taşıyıcı_list.metinde bir taşıyıcı_adı'na karşılık carrier_name carrier_list.textpb