** Présentation des appareils connus à ce jour: Nexus 6, Nexus 9, Moto E 4G LTE, LG G4, Galaxy S6, Samsung Galaxy S5 (modèle SM-G900M), Nexus 5X, Sony Xperia Z5 Compact, Samsung Galaxy Tab S2 **
** Voir également https://altbeacon.github.io/Android-beacon-library/beacon-transmitter-devices.html **
L'une des nouvelles fonctionnalités de la version Android 5 est la prise en charge du mode périphérique Bluetooth Low Energy. Bien qu'il soit promu pour fonctionner indépendamment de l'appareil utilisé, il semble dépendre du chipset (voir isMultiAdvertisementSupported () fonctionne dans BluetoothAdapter.Java).
Il fonctionne pour le Nexus 5, mais pas pour le Nexus 7 (appelé bogue dans le périphérique BLE prend en charge l'exemple Android-L , mais il pourrait ne jamais fonctionner à cause de son chipset?). Aussi https://code.google.com/p/Android-developer-preview/issues/detail?id=589 ne donne pas de déclarations concluantes.
Ma préoccupation est que, comme de nombreux appareils plus anciens devraient obtenir Android 5, seules les tablettes les plus récentes (et les téléphones relativement nouveaux) prendront en charge le mode périphérique BLE. Cela pourrait ne pas être clair pour l'utilisateur final des applications s'appuyant sur cette nouvelle fonctionnalité Android 5.
Pour moi, il est très difficile de savoir quels chipsets/appareils, qui obtiendront finalement Android 5, prendra en charge le mode périphérique BLE. Quiconque peut me donner des informations à ce sujet? Quels chipsets prendront en charge le BLE Plus précisément, comme beaucoup de nos clients ont un Nexus 7 (2013), le Nexus 7 sera-t-il jamais pris en charge?
Edit 19-2-2015: Depuis décembre 2014, il n'est plus pris en charge pour le Nexus 5, seuls les Nexus 6 et 9 semblent prendre en charge le périphérique BLE Mode/Publicité. J'espère que le nombre d'appareils prenant en charge cela augmentera considérablement dans un avenir proche.
Plus d'informations et de discussion ici: https://code.google.com/p/Android-developer-preview/issues/detail?id=157
Edit 6-3-2015: Vue d'ensemble ajoutée pour référence rapide
Edit 17-2-2016: Ajout de certains appareils que j'ai vérifiés moi-même mais qui ne figuraient dans aucune des autres listes
Le Android 5.0.X vous permettra uniquement d'utiliser la nouvelle API pour BLE. Cette nouvelle API est livrée avec une nouvelle fonctionnalité, que vous avez mentionnée dans votre question: la possibilité de faire de la publicité, à partir de votre propre Android, l'utilisant en mode périphérique. Cependant, l'inconvénient de cette nouvelle fonctionnalité est qu'elle dépend du matériel. Par exemple, avant de démarrer un BLE, vous devez:
Premièrement: vérifiez si le BLE est pris en charge, ce que vous pouvez faire en ajoutant cette ligne dans votre manifeste: <uses-feature Android:name="Android.hardware.bluetooth_le" Android:required:"true"/>
Deuxièmement: vous devez vérifier si votre chipset est compatible avec celui-ci, en utilisant les méthodes suivantes:
bluetoothAdapter.isMultipleAdvertisementSupported();
bluetoothAdapter.isOffloadedFilteringSupported();
bluetoothAdapter.isOffloadedScanBatchingSupported();
Notez également que pour les deux méthodes ci-dessus, la documentation de l'API indique clairement que:
"Retourne vrai si la publicité multiple est prise en charge par le chipset"
"vrai si le chipset prend en charge le filtrage sur puce"
"vrai si le chipset prend en charge le traitement par lots des analyses sur puce"
Cela étant dit, cela nous amène à la question:
"Quels périphériques matériels vont prendre en charge cette fonctionnalité?"
Eh bien, la réponse à cela est un peu plus compliquée car ce n'est pas une fonctionnalité obligatoire pour le matériel/protocole Bluetooth et cela variera probablement d'une fabrication à l'autre. Mais pour l'instant, les seuls appareils qui prennent officiellement en charge la technologie, sans problèmes majeurs, sont le Nexus 6 et le Nexus 9, car leur matériel est déjà fourni avec le support. Le mieux que vous puissiez faire n'est pas de vous fier uniquement à la technologie pour l'instant et d'essayer d'explorer d'autres solutions possibles, le cas échéant.