La technologie iBeacon promue par Apple depuis iOS 7 permet d'afficher sur l'écran de l'iPhone des notifications qui s'activent selon la position de l'utilisateur. De plus en plus populaire, iBeacon se retrouve aussi bien dans des Apple Store (aux États-Unis, du moins), que dans des stades ou lors de festivals. Mais elle ne concerne pas que le smartphone d'Apple : dans les faits, les mobiles sous Android équipés d'une puce Bluetooth LE peuvent aussi communiquer avec les balises Beacon; cet aspect multi-plateformes permet des comparaisons très intéressantes, tout particulièrement sur la consommation d'énergie que la technologie implique. Aislelabs a enquêté sur le sujet en mettant aux prises les iPhone 4S, 5c et 5s face au Moto G et aux Nexus 4 et 5.
Le premier enseignement, le plus étonnant étant donné l'implication d'Apple, est que la consommation de la batterie est mieux gérée sous Android que sous iOS. Évidemment, cela varie beaucoup d'un iPhone à un autre, le 4S se montrant ainsi le plus énergivore, tandis que le 5s est le plus économe. Le scénario du premier tableau est le suivant : le smartphone opère un scan toutes les secondes d'une heure, ce qui est extrême — une application standard dans le monde réel scanne les balises beaucoup moins fréquemment. Lorsque l'iPhone 4S repère 10 balises dans les environs, il consomme 14,5% d'énergie en plus, quant le 5s se contente de 7%.
Dans le second scénario, plus tortueux, les iPhone ont été placés dans les parages d'une balise, de 10 balises dont neuf ne communiquent pas avec l'application de test, et de 10 balises à nouveau mais dont chacune est prise en compte par l'application.
Le résultat confirme la première conclusion : l'iPhone 4S est le moins efficace en matière de gestion de la batterie. Les auteurs de l'étude rappellent à toutes fins utiles que les applications iBeacon représentent seulement 1% de la consommation d'énergie d'une batterie sur 12 heures d'usage dans le monde réel.
Au contraire d'Android qui prend en compte tous les beacons situés à proximité, iOS rajoute une subtilité : le système d'exploitation analyse d'abord le numéro d'identification (UIDD) de la borne avant d'autoriser ou non le fonctionnement avec l'application. Cela apporte un gain modeste en matière de consommation énergétique, ce qui est toujours bon à prendre avec l'iPhone (cela démontre aussi le travail d'optimisation de la batterie des ingénieurs d'Apple).
Mais malgré les efforts de la Pomme, les terminaux Android font tous mieux que l'iPhone, et tout particulièrement l'entrée de gamme Moto G. Le tableau suivant montre la consommation d'énergie exigée par la présence de zéro (aucune balise n'est présente autour de l'utilisateur) à dix bornes iBeacon.
Le Moto G utilise une astuce pour afficher de tels résultats. Sur 100 bornes beacon, le Nexus 5 décodera 100% des signaux envoyés par les balises; le smartphone de Motorola se contentera lui de 25 à 33% des signaux. Étant donné que la grande majorité des signaux sont de toutes manières dupliqués (les bornes envoient un signal toutes les 100 à 600 ms), il n'est donc pas forcément utile de les décoder tous. Globalement, la puce Bluetooth LE des appareils Android testés ici réalise un échantillonnage automatique des signaux Beacon, ce qui expliquerait pourquoi la consommation d'énergie est moindre sur l'OS de Google. Mais ces différences restent relativement négligeables quand on en vient à l'utilisation réelle des smartphones.
Il y a cependant fort à parier que l'iPhone 6 et les futurs mobiles Android gagneront encore en optimisation avec iBeacon, avec l'apport de nouvelles puces BLE.