Veri Planlarını Uygulama

Android 9, kullanıcıların kafa karışıklığını azaltmak ve çağrıları desteklemek için operatörlerin yetkili plan ayrıntılarını doğrudan Ayarlar uygulamasında kullanıcılara sunmasına olanak tanıyor. Android 4.0 ve üstünü çalıştıran cihazlarda kullanıcılar, operatöre özel veri planı ayrıntılarını Ayarlar uygulamasında manuel olarak yapılandırabilir (örneğin, veri kullanımlarını yönetmek için uyarıları ve sınırları ayarlayabilir).

Operatöre Göre Yapılandırma

Operatörler, veri planlarını yapılandırmak için SubscriptionPlan API'lerini kullanarak mevcut Android uygulamalarına işlevsellik ekleyebilir. API'ler, hem yinelenen hem de yinelenmeyen planlar ve zaman içinde değişen planlar dahil olmak üzere çok çeşitli veri planı türlerini destekleyecek şekilde tasarlanmıştır.

Aşağıda, aylık olarak yinelenen ortak bir veri planı türünün nasıl yapılandırılacağına ilişkin bir örnek verilmiştir:

SubscriptionManager sm =
    context.getSystemService(SubscriptionManager.class);
sm.setSubscriptionPlans(subId, Lists.newArrayList(
    SubscriptionPlan.Builder.createRecurringMonthly(
            ZonedDateTime.parse("2016-12-03T10:00:00Z"))
        .setTitle("G-Mobile")
        .setDataLimit(4_000_000_000L,
            SubscriptionPlan.LIMIT_BEHAVIOR_BILLED)
        .setDataUsage(200_493_293L, dataUsageTimestamp)
        .build()));

Cihaz, bir uygulamanın veri planlarını yalnızca aşağıdaki koşullardan biri altında yapılandırmasına izin verir:

  • SIM kart, SubscriptionManager.canManageSubscription() tarafından tanımlandığı gibi kendisini yönetebilecek bir uygulamayı açıkça tanımlamıştır.
  • Operatör, hangi uygulamanın operatörün veri planlarını yönetebileceğini belirtmek için CarrierConfigManager aracılığıyla KEY_CONFIG_PLANS_PACKAGE_OVERRIDE_STRING değerini aktardı.
  • Cihazın sistem görüntüsünde, MANAGE_SUBSCRIPTION_PLANS iznine sahip yerleşik bir uygulama var.

İlk iki koşul, taşıyıcı uygulamasının fabrikada sistem görüntüsüne önceden yüklenmesine gerek kalmadan kullanıcı tarafından yüklenmesini sağlar. İşletim sistemi, yapılandırılmış tüm veri planı ayrıntılarının korunmasını ve yalnızca ayrıntıları işletim sistemine orijinal olarak sağlayan operatör uygulaması tarafından kullanılabilir olmasını zorunlu kılar (ve CDD bunu gerektirir).

Önerilen tasarımlardan biri, bir operatör uygulamasının, veri planı ayrıntılarını günlük olarak güncellemek için boşta kalan bir bakım hizmetini kullanmasıdır, ancak operatörler, veri planı ayrıntılarını operatörün dahili SMS mesajları yoluyla almak gibi çok çeşitli mekanizmaları kullanmakta özgürdür. Boşta kalan bakım hizmetleri en iyi şekilde setRequiresDeviceIdle() ve setRequiresCharging() kullanan bir JobScheduler işiyle uygulanır.

İşletim Sistemine göre kullanım

İşletim Sistemi, SubscriptionPlan API'leri tarafından sağlanan veri planı ayrıntılarını aşağıdaki şekillerde kullanır:

  • Plan ayrıntıları, kullanıcılara doğru veri kullanımını göstermek ve yükseltme/yukarı satış fırsatları için operatör uygulamasına doğrudan derin bağlantılar sağlamak için Ayarlar uygulaması aracılığıyla ortaya çıkıyor.
  • Veri kullanım uyarısı ve limit bildirim eşikleri, plan ayrıntılarına göre otomatik olarak yapılandırılır; uyarı sınırın %90'ına ayarlanmıştır.
  • Operatör geçici olarak ağın "sıkışık" olduğunu belirtirse, işletim sistemi zaman kaydırmalı JobScheduler işlerini geciktirerek operatör ağındaki yükü azaltır.
  • Operatör, ağın geçici olarak "ölçülmemiş" olduğunu belirtirse, işletim sistemi, operatör geçersiz kılmayı temizleyene veya zaman aşımı değerine (varsa) ulaşılana kadar hücresel bağlantıyı "ölçülmemiş" olarak bildirebilir.
  • İşletim sistemi, kullanıcının mevcut veri kullanımını genel veri sınırıyla karşılaştırarak, faturalandırma döngüsünün sonunda kullanıcının normal veri kullanımını tahmin eder ve fazla verilerin %10'unu, örneğin uygulamaların kullanmasına izin vererek kullanıcı deneyimini iyileştirmek için ihtiyatlı bir şekilde tahsis eder. çok yollu veriler

Özelleştirme ve doğrulama

Android Ayarları uygulaması, operatör tarafından yapılandırılmış tüm veri planı ayrıntılarını görüntüleyerek kullanıcıların operatör ilişkilerinin en doğru durumunu görmelerini sağlar ve kullanıcılara planlarını yükseltmeleri için operatör uygulamasına giden bir yol sunar. Ayarlar uygulamasını özelleştirmeyi tercih eden cihaz üreticilerinin bu ayrıntıları ortaya çıkarmaya devam etmesi önerilir.

Yukarıda açıklanan SubscriptionManager API'leri, veri planı ayrıntılarının operatör uygulamaları tarafından yapılandırılabilmesini ve değişikliklerin işletim sistemi içinde yayılmasını sağlayan android.telephony.cts.SubscriptionManagerTest tarafından test edilmiştir.