Apple’s trademarked iBeacon protocol was developed for iOS devices, but it actually works equally well with Android devices running the appropriate software. In fact, according to a new study by marketing firm Aislelabs, Android phones may prove to be superior devices for searching and connecting to iBeacons, at least as far as battery life is concerned.
A few months ago, marketing firm Aislelabs published a study examining the effects of iBeacons on battery drain with Android handsets. This new reportexamines the differences between iBeacon-driven battery drain on iOS and Android.
Any device with Bluetooth Low Energy support can theoretically connect to a beacon using a variety of protocols, such as the open-source Altbeacon, but most beacons currently conform to Apple’s proprietary iBeacon specification, which was described in developer tools that were released with iOS 7. Android developers were able to adapt Apple’s protocol to develop apps and libraries for other platforms.
The Aislelabs study found that iOS devices are less affected than Android devices by the number of iBeacons nearby, but iOS devices scanning for iBeacons end up consuming more battery life than similar Android devices, due to Apple’s choice of Bluetooth hardware.
However, iOS devices are great at handling “ambient beacons,” or iBeacons whose UUIDs don’t fall into the defined range set — for instance, an MLB-operated iBeacon would be considered an ambient beacon for an iPhone without the MLB In The Ballpark app installed. Because signals outside the range set are discarded before they are processed, there are minimal increases in battery drain when adding more ambient beacons.
Of the six devices that Aislelabs tested, the inexpensive Moto G displayed the best battery behavior, and all three Android devices displayed lower amounts of battery drain when scanning for small numbers of iBeacons than the iPhones. Keep in mind that these figures are based on battery percentage, and the Android devices in the study have larger batteries than the iPhones.
As a whole, the tested Android devices are better at scanning for iBeacons without killing battery life. The Moto G, in particular, uses a process called “beacon sampling” to reduce the number of BLE signals it processes — if it were to receive 100 iBeacon advertisements, it would only decode a fraction. No information is lost, as there is a lot of duplication because iBeacons advertise frequently.
Apple’s range set implementation instead allows developers to filter signals by UUID, allowing ambient iBeacon signals to be discarded, but all iBeacon advertisements that reach an iPhone appear to be decoded to see if the UUID falls into the allowed range.
Although Apple defined their own iBeacon specification on top of open-source (and originally Nokia-developed) BLE technology, that doesn’t mean it necessarily has an advantage optimizing its devices for BLE signals, even if those signals conform to Apple’s own protocol.