Android 9 çalıştıran cihazlar, bir kimlik ve operatör adı sağlamak için abonelik operatörü bilgilerini tanıyabilir. Android, her bir taşıyıcı ve benzersiz taşıyıcı kimliği için eşleşen kurallara sahip bir taşıyıcı kimliği veritabanı tutar. AOSP, carrier_list.textpb
dosyasında taşıyıcı kimliği veri tabanının içeriğini içerir. Birleştirilmiş veritabanı, taşıyıcıları tanımlaması gereken uygulamalarda yinelenen mantığı en aza indirir ve taşıyıcıyı tanımlayan özniteliklerin açığa çıkmasını sınırlar.
Operatör tanımlamasının kapsamını ve doğruluğunu iyileştirmek için Android, bant dışı ve operatör kimliği tablosu güncellemelerini destekler. Her güncelleme bir sürüm numarası ile gelir ve AOSP'de yayınlanır.
uygulama
Bant dışı güncellemeleri uygulamak isteyen kullanıcılar, carrier_list.pb
ikili dosyasını AOSP'den 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/
data 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 veri tabanı sınıfında tutar. Taşıyıcı kimliği veritabanındaki en son bilgiler, getSimCarrierId()
ve getSimCarrierIdName()
genel yöntemleri tarafından alınır.
Taşıyıcı kimlik bilgilerini veritabanına ekleme
Veritabanına 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 carrier_list.pb
adresindeki AOSP kod tabanına gönderilir. Daha sonra güncellenen listeyi kopyalayabilir ve özelleştirilmiş yapınıza dahil edebilirsiniz.
Operatör kimliklerini CarrierConfig ile entegre etme
Android 10'dan başlayarak, taşıyıcı yapılandırması, operatöre özgü yapılandırmaları CarrierService
almak için taşıyıcı kimliklerinin anahtar olarak kullanılmasını destekler.
Operatör kimliklerini CarrierConfig
ile entegre etmenin aşağıdaki avantajları vardır:
- Yinelenen veya tutarsız verileri kaldırarak her bir taşıyıcı için tüm MCC/MNC çiftlerini tek bir konumda birleştirir.
- Her taşıyıcı için standart bir tanımlayıcı oluşturur ve belirsizliği ortadan kaldırır.
- Bir mobil ağ operatörünün (MNO) parçası olarak yapılandırmalara sahip olmak yerine, mobil sanal ağ operatörlerinin (MVNO'lar) bireysel kimliklerle tanımlanmasına izin verir.
Yapılandırma verilerini operatör kimliklerine taşıma
Yapılandırma verilerini MCC/MNC çiftlerinden operatör kimliklerine taşımak için şu adımları izleyin:
carrier_config_mccmnc.xml
dosyalarını tek bir taşıyıcıdan birlikte gruplandırın. MCC, MNC ve MVNO bilgilerini belirli bir taşıyıcıya eşlemek içincarrier_list.textpb
referans olarak kullanın.Yapılandırmaları tek bir dosyada birleştirin.
(İsteğe bağlı) Verileri MNO'lardan 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, geçiş sırasında MNO verilerinin dahil edilmesi önerilir.Bir MVNO taşıyıcı kimliği için yapılandırma mevcut değilse, yapılandırmayı
getCarrierIdFromSimMccMnc
kullanarak MNO taşıyıcı kimliğinden alın.Yeni dosyayı
carrier_config_carrierid_ carrierid _ carriername .xml
olarak yeniden adlandırın; burada carrierid bircanonical_id
karşılık gelmeli ve carriername ,carrier_list.textpb
bircarrier_name
ile karşılık gelmelidir