When Apple launched iOS 7 last summer one of the initially glossed over technologies was the iBeacon feature. IPhone apps would be able to get location-specific information from Bluetooth low energy-based iBeacons which would broadcast small pieces of information which apps could see even while in the background. The iBeacons themselves are just battery powered devices that have recently gone up for sale by various 3rd parties such as Estimote.
Eventually, the tech media started to pick up on how this could be a game changer for retail and indoor navigation. What also make iBeacons compelling was that version 4.3 of the Android OS supports Bluetooth LE devices. Thus, it would be possible for newer Android devices with BLE support (eg. The Samsung galaxy 3, but not the s2) as carriers slowly allowed 4.3 to be pushed out to devices.
Back on the iOS side, one of the more interesting aspects was that the OS allowed BLE iPhones (4S and higher) to become iBeacons themselves. While this made testing apps that use iBeacons possible in the short term before manufacturers could start rolling out the cheaper dedicated devices, it also meant a kind of proximity app could be easily created which would notify an app of another phone nearby (~30m) which was also running said app.
The semi-joking example of this I’ve been giving is that we could actually create a gaydar app which would allow to dudes to get a push notification if another gay man was nearby if he were also running the app. While this probably would be useless given the ubiquity of Grindr, it’s conceptually interesting to have a social network that runs only between phones and doesn’t need a central server.
While the gaydar app is a cheeky idea to demonstrate a new way in which apps can be used to passively interact with nearby phones, this is dependent on the phones being able to be put into bluetooth ‘peripheral mode’ so it can become an iBeacon. Otherwise phones would only be able to search and not be found.
The trouble with this class of proximity apps is that Android OS did not support peripheral mode. There are libraries which would allow BLE Android devices to scan and find iBeacons, but there simply wasn’t support at the OS level to allow them to become iBeacons.
In practice, this would mean proximity apps would have a large flaw in that iPhones could find other iPhones, Androids could find iPhones, but Androids couldn’t find other Androids. That’s a pretty sizable flaw and would likely prevent such an app from gaining too much traction.
The reality is that Android has gotten a lot more market share in recent years and while Instagram was able to create a social network back in 2010 using only an iOS version, no other apps dare and try to create a product with a network effect today without android support. Ie. Snapchat.
I was hoping that last weeks release of Android 4.4 (Kitkat) would see Google add support for peripheral mode so Android phones would have support at least coming down the pipeline, but developers looking at the new APIs in the release were left wanting. Though Kitkat won’t get a large market share for a while (the initial BLE support in 4.3 still hasn’t), its hard to get motivated to make a social network that’s going to be blocked from any meaningful Android adoption for a year.
In the meantime, I’ll just have to keep watching the peripheral issue reported to Google in hopes of getting my greenlight from Google in some future release.