Android 9 permet aux opérateurs de fournir directement aux utilisateurs des informations fiables sur leur forfait dans l'application Paramètres, ce qui réduit la confusion des utilisateurs et les appels au service client. Sur les appareils équipés d'Android 4.0 ou version ultérieure, les utilisateurs peuvent configurer manuellement les détails de leur forfait Internet spécifique à leur opérateur dans l'application Paramètres. Par exemple, ils peuvent définir des avertissements et des limites pour gérer leur consommation de données.
Configuration par opérateur
Pour configurer des forfaits de données, les opérateurs peuvent ajouter des fonctionnalités à leurs applications Android existantes à l'aide des API SubscriptionPlan
.
Les API sont conçues pour prendre en charge un large éventail de types de forfaits de données, y compris les forfaits récurrents et non récurrents, ainsi que les forfaits qui évoluent au fil du temps.
Voici un exemple de configuration d'un type courant de forfait de données récurrent mensuel :
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()));
L'appareil n'autorise une application à configurer des forfaits de données que si l'une des conditions suivantes est remplie :
- La carte SIM a explicitement défini une application qui peut la gérer, comme défini par
SubscriptionManager.canManageSubscription()
. - L'opérateur a transmis la valeur
KEY_CONFIG_PLANS_PACKAGE_OVERRIDE_STRING
viaCarrierConfigManager
pour indiquer quelle application peut gérer les forfaits de données de l'opérateur. - L'appareil dispose d'une application intégrée à l'image système et disposant de l'autorisation
MANAGE_SUBSCRIPTION_PLANS
.
Les deux premières conditions permettent à l'utilisateur d'installer l'application de l'opérateur sans qu'elle soit préinstallée dans l'image système en usine. L'OS applique (et le CDD exige) que tous les détails du forfait de données configuré soient protégés et ne soient mis à la disposition que de l'application de l'opérateur qui a initialement fourni les détails à l'OS.
Une conception suggérée consiste à ce qu'une application d'opérateur utilise un service de maintenance inactif pour mettre à jour les détails du forfait de données quotidiennement. Toutefois, les opérateurs sont libres d'utiliser un large éventail de mécanismes, tels que la réception des détails du forfait de données par le biais de messages SMS internes à l'opérateur. Les services de maintenance inactive sont mieux implémentés avec un job JobScheduler
qui utilise setRequiresDeviceIdle()
et setRequiresCharging()
.
Utilisation par système d'exploitation
Le système d'exploitation utilise les informations sur le forfait de données fournies par les API SubscriptionPlan de la manière suivante :
- Les détails du forfait sont affichés dans l'application Paramètres pour présenter aux utilisateurs des données d'utilisation précises et fournir des liens profonds directs vers l'application de l'opérateur pour les opportunités de mise à niveau/vente incitative.
- Les seuils de notification d'avertissement et de limite d'utilisation des données sont configurés automatiquement en fonction des détails du forfait. L'avertissement est défini sur 90 % de la limite.
- Si l'opérateur indique temporairement que le réseau est encombré, l'OS retarde les tâches JobScheduler qui peuvent être décalées dans le temps, ce qui réduit la charge sur le réseau de l'opérateur.
- Si l'opérateur indique temporairement que le réseau est non facturé à l'usage, l'OS peut signaler que la connexion mobile est "non facturée à l'usage" jusqu'à ce que l'opérateur supprime le remplacement ou jusqu'à ce que la valeur du délai avant expiration (si elle est fournie) soit atteinte.
- En comparant l'utilisation actuelle des données par l'utilisateur avec la limite globale de données, l'OS estime l'utilisation normale des données par l'utilisateur à la fin du cycle de facturation et alloue de manière conservatrice 10 % des données excédentaires pour améliorer l'expérience utilisateur, par exemple en permettant aux applications d'utiliser des données multipath.
Personnalisation et validation
L'application Paramètres Android affiche tous les détails du forfait de données configuré par l'opérateur, ce qui permet aux utilisateurs de voir l'état le plus précis de leur relation avec l'opérateur et leur offre un moyen d'accéder à l'application de l'opérateur pour mettre à niveau leur forfait. Il est recommandé aux fabricants d'appareils qui choisissent de personnaliser l'application Paramètres de continuer à afficher ces informations.
Les API SubscriptionManager
décrites sur cette page sont testées par android.telephony.cts.SubscriptionManagerTest
, ce qui garantit que les applications des opérateurs peuvent configurer les détails du forfait de données et que les modifications sont propagées dans l'OS.