Apple iOS 7.1 Launches Major iBeacon Improvement

Apple iOS 7.1 and iBeacon

iBeacon Now Works When the App Is Closed

Apple launched iOS 7.1 today and with it a major, game-changing improvement to iBeacon.

As of today, once an app is installed it will “look” for beacons even if your app is shut down or you’ve rebooted your phone.

We tested the functionality today to verify the new feature.

After opening an iBeacon app we hard closed it: not just putting it into the background tray but swiping it closed entirely. The phone still detected beacons and sent a message through the lock screen, something which in the past was reserved for apps that were at minimum running in the background tray.

The functionality even works if you reboot your device: after you power down your phone and start it up again, it will continue listening for beacons even if you don’t open up the app again.

A Significant Change

The change is significant. When Apple launched iOS 7 and gave phones and tablets the ability to ‘hear’ Bluetooth LE powered beacons it opened up a new era in proximity-based experiences. Retailers could now send you a coupon when you’re near the cookie aisle or background information about a painting in an art gallery.

But there was a problem: along with a few other glitches in the iBeacon SDK (the software used to create the apps on your phone) there was no way to listen for Bluetooth LE beacons unless your app was, at a minimum, on in the background.

Ostensibly this was to ensure that users had an easy way to prevent spam messages or to opt-out of your iBeacon “experience”.

But with iOS 7.1 your application will listen for beacons even if it was hard closed. The user can still opt out by turning off “location permission” under settings, can turn Bluetooth off, or can delete your app entirely.

But the change is a major boon to iBeacon developers – and will mean you no longer need to find fancy ways to prompt your user to keep an app in background mode.

A Change in Responsiveness?

It’s probably too early to tell from a few quick tests, but we also noted what seemed like a major improvement in responsiveness to Bluetooth LE signals. Region changes, exits, and beacon detection seemed to happen at a significantly faster rate than in iOS 7.0

In the past, for example, we’d see a delay of 1-2 seconds up to a minute on exiting a region. In iOS 7.1 we see it happen nearly instantaneously.

We’re hoping other developers can chime in on this point – either anecdotally or otherwise, to let us know whether you’re seeing a near lightning response to beacon detection (or is that, perhaps, too much to ask? It might just be a low level of radio interference at our offices today).

In any case, we’re still doing a dance here at BEEKn to find that your app truly can see the world around it, and will find your beacons even if your app is off.

Give Us A Follow

Join our weekly e-mail list for more on iBeacons. Check out our BEEKn Google page, follow me on Twitter, or connect with me on LinkedIn.

And let us know what you think – But what do you think? Is a USB-powered beacon a niche device, or does it match most of the iBeacon use cases? Drop in your comments below.

59 Responses to “Apple iOS 7.1 Launches Major iBeacon Improvement”

    • great! “Apple accused of selling customers’ personal information”

      goo (dot) gl/fEkM0n

      never trust Apple if you need privacy

      Reply
  1. One thing that’s kind of interesting – you don’t need to deploy your app to a 7.1 build, so long as the user has updated to 7.1 it’s “retroactive”.

    Therefore, anyone with an iBeacon app will immediately take advantage of the feature without needing to deploy a new version.

    Reply
  2. Just did a quick test on ranging, and it seems much more stable. Working on “tap Beacon” code and it was flakey when far away from the beacon on iOS 7. 7.1 seems to make this much more predictable (and usable).

    Reply
  3. Thanks Timothy – and great to see you as always! :) You guys rock.

    And good…I wasn’t sure if it was just me. Seems slightly more responsive although still get a lag on exit, but seems slightly less than before.

    But what we noticed was the same thing: predictability.

    Feels like we have a win.

    Reply
    • Same here – although I had some initial “hesitancy” with picking up one of my Estimote beacons, the entry detection is more responsive and the delay, although still present, seems less on exit.

      Looking forward to testing it out more. This is really a killer feature update!

      Happy I found this post. Thanks Doug.

      Reply
  4. Doug,

    Over the weekend I tested my beacons in a “real world setting”. An abundance of mobiles, wireless devices using bluetooth, radios, routers, microwaves etc…I was satisfied with the results. A few hours ago, I updated my device to 7.1 and can definitely notice a faster response from the app used for the tests when in proximity of the beacons. I must mention that I’m currently at home, so tomorrow I’ll run comparative tests, out in the “real world”, with hopes that the improved responsiveness will be noticeable there as well. TBC…

    Reply
  5. Michael

    Great news!
    Have you tested if it’s possible to now transmit as an ibeacon in the background?

    Thanks!

    Reply
  6. Hi, Doug,
    The tests we made with my colleagues showed it previously worked in background, even after a reboot. It did not work if a user decided to manually close the app with a swipe.
    This choice didn’t seem wrong to me as it’s a fast way to remove annoying notifications. But of course one can still remove location permission.
    Thanks for your articles.

    Reply
    • Hannes Verlinde

      Indeed, it was already working after reboot before iOS 7.1.

      Reply
    • Giuseppe

      We did a proof of concept with iOS 7.0 and we were able to detect beacons when application was not running. The only difference is the ranging time frame. Detecting beacons when the application is completely off was a task pain, it could require up to 15 minutes after entering the beacon region. We are going to do some tests with the new iOS version

      Reply
  7. A very quick test with my series 1 gimbals (not ibeacon configured):
    Very, very, very noticeable improvement on ranging and responsiveness.

    I didn’t even test in background mode but I’m incredibly happy and surprised

    Reply
  8. Alberto – great news…we’re seeing similar results after a day of testing. The responsiveness remains high even with the app closed and after a day of not opening it – we were wondering whether Apple might slowly reduce the amount of polling it does for apps that are closed off.

    James – not sure about the 20 UUID limit. I imagine it’s still in place but am not sure.

    We also haven’t seen any of the weird ‘toggling’ that Bluetooth used to do where you’d suddenly lose the Bluetooth signal for a very brief millisecond, forcing the app to think it’s exited and to restart polling thus causing an unexpected region entry even when you never left the region – has anyone else seen whether that bug has been cleaned up?

    Reply
  9. Tushar Bhattacharyya

    Much needed improvement on the faster BLE detection part !

    Reply
  10. This is great news for those of us that are wanting to search for beacons while the app is off. So did you create a delegate for the open in the background like the docs from the Apple conference mentions?

    Reply
  11. We have noticed improvements including reduced connection times, increased connection distance and improved responsiveness in our first tests using iOS 7.1 with the iBeacons inside our Robosmart LED Bulbs. An added benefit is that the designated bulbs connect and turn on automatically when our Smart Lights App is open. This eliminates an extra step previously required to locate and connect to nearby iBeacons. It’s a big plus for our customers.

    Reply
  12. Thanks for the heads up Doug, Im keen to check this out. It seems iOS is better served than Android right now in terms of BLE functionality – I’m one of many patiently waiting for the ability to function as a beacon to make its way onto the platform.

    Reply
    • Justin – Android devices probably do a better job than iOS because you have a lot more control, and by some accounts they’re even less harsh on battery consumption. The lag, as you know, is in SDKs and roll-out of Kit Kat to the full “Android family”.

      It was interesting to see Samsung upgrade to Kit Kat and to focus on wearables and health – that might be their “beacon play” more so than beacons in the world/retail/etc….although obviously Android also works with iBeacon. We just need to wait for the handset operating systems to catch up and to see more work around frameworks and SDKs.

      Reply
  13. When you say, “The user can still opt out by turning off “location permission” under settings, can turn Bluetooth off, or can delete app entirely”, do you mean the user must turn off the Location Services function entirely or the individual app’s access under the Location Services?

    Reply
  14. Also, will iPhones detect only those certified by Apple as iBeacons or just Beacons too? Thanks so much.

    Reply
  15. I was testing this today as well with Estimotes and the monitoring of exit and entry events does seem more stable and responsive and it is good to see that apps can now listen for entry and exit events even when the app is forced closed. However, it also seems that ranging events (immediate, near, far) still cannot be monitored in the background with the screen off except for a few seconds either side of an entry or exit event.

    Still, progress is good :)

    Reply
    • Christopher Drum

      I’m noticing the same thing about ranging. I get an initial burst of ranging events logged upon entering a region, then nothing after that. That said, region entering seems immediate and exiting seems to have a delay of about a minute? More than accurate enough for my use cases, your mileage may vary.

      It also seems that iBeacon advertising does not work in the background. Can anyone corroborate this, or perhaps knows of a way to keep the beacon going?

      Reply
  16. Doug,

    My follow up comparative tests in a “real world setting” are completed .

    The improved responsiveness is noticeable with multiple test apps.

    Very cool 7.1, very cool.

    The best part? The best is yet to come!

    Reply
  17. Sesil – The user can turn off location permissions on a per app or phone wide basis. I’m not sure how friendly it is to users, however. And I can’t help wondering whether Apple might not move “location services” into its own unique tab under settings.

    Right now, under Settings>General>Background Refresh you can turn off for your phone or toggle specific apps.

    You can also toggle universally or by specific app which ones send you notifications through your lock screen under Settings>Notification Center ….which is the main way you’ll reach people who come into beacon region (sending a message or notice through the lock screen).

    iPhones will detect ALL beacons, not just Apple certified iBeacons. At least for now, although I see now reason why (or even HOW) Apple would change that, otherwise they’ll have to manage a universal directory of UUID numbers.

    Reply
  18. The success of iBeacon by retailers, marketers and other organizations that adopt it will be based on how it’s used. When a new enabling technology becomes available, marketers and businesses often deploy it without really thinking through the best potential use and approach to the customer. If a retailer deploys iBeacon to spam a customer as soon as they enter a store, it may hurt more than help.

    On the other hand, if a retailer uses iBeacon to offer genuine help, customers will more likely embrace its use. For example, every time I walk into a Home Depot, I am lost. There are so many aisles of merchandise without a clear notion of where the widget I’m searching for can be found. (I went to a Home Depot with my wife a few years back and we got separated in plumbing supplies – I hope she’s doing well, wherever she is. But I digress.)

    Imagine if I could be greeted by a Home Depot iBeacon upon entry with a simple question: “Welcome to Home Depot. Let us know what you’re looking for, and we’ll guide you there.” With a swift entry of the description of the item I’m looking for, the Home Depot system could respond with the exact location of the item (let’s say a Rain Bird automatic sprinkler head) mapped out in the store, and perhaps with walking directions to its location. It might bring up a product description and price. If necessary, you could summon a Home Depot staff member from your iPhone, all via iBeacon.

    That simple act could help me complete my shopping more quickly, assure a sale for Home Depot and assure that my shopping experience was outstanding. That’s the sort of marketing that would make me a dedicated Home Depot customer, all by integrating iBeacon technology correctly with the company’s IT infrastructure and merchandising.

    My hunch is that we won’t see this happen very soon. It would mean upgrading the IT back end with marketing and merchandising systems. But if storefront retailers want to compete with Amazon, this is exactly the sort of experience they will need to create for their customers. iBeacon can help make this possible – if retailers see the light and move quickly.

    Similar scenarios could be used for grocery shopping, museums, sports stadiums, hospitals, airports and more. Fingers crossed that this will happen. My hope is that a few years from now, Apple’s new creation will become mainstream and that we, the customer will be the better for it. What Apple has done with iBeacon is amazing. Let’s hope its end users (retailers) are equal to the task.

    Reply
  19. Thanks for this great article.
    Can you tell us more about the test procedure that highlight the awaited behaviour from feature : “with iOS 7.1 your application will listen for beacons even if it was hard closed”.
    By “even if it was hard closed”, do you mean, when user swipe the app from the multitask bar?I do not notice any evolution in the API, or release notes, so , is there specific thing to do to enable this feature (app permission, specific coding, etc.).
    Best Regards ;)

    Reply
  20. Hi Doug, even in Rome we confirm improvements using iOS 7.1 :)

    One of our first presentation – months ago – has been very embarrassing.
    In the middle of the demo, answering on a couple of questions, our testing device become crazy but actually nor me (holding the phone) nor the beacons around were moving! The phone started sending notifications like in loop.
    I still see region exit is triggered when you are pretty far but, right now, I feel to say that this 7.1 is bringing improvements (we did a stress test using Estimote).

    Reply
  21. Doug, thank you for answering my questions. This article is very helpful.

    Reply
  22. Yes, we should have noted that Bill – we ran tests using the Radius Proximity Kit which detects both geofences and beacons – it worked for both even with the app off.

    Reply
  23. Does anyone know if phones can now advertise as iBeacons in the background? I think that would be an even bigger game changer. As of right now phones can’t advertise as an iBeacon when the app is in the background. If they could, this would open up the possibilities greatly. You could have something similar to StreetPass (Nintendo 3DS) right on your phone. I imagine it is only a matter of time before Apple allows this. It seems like a no-brainer.

    Reply
  24. Patrick – haven’t tested it ourselves but we’re told that no, it won’t work. Totally agree with you – game changer if you could, even in retail where an iPad sales terminal will only act as a beacon if the app is active, something you can’t always guarantee.

    I wonder whether they’re waiting on a wearables strategy before they make that move?

    Reply
  25. The connection time improvement is not limited to iBeacons. I can see a vast improvement on other BLE devices, it connects almost instantly. I hope this does not drain the battery of the BLE Peripheral. Does anybody see on a protocol level what has changed? I did not recompile my app for ios7.1 but get this much better user experience out of the box with iOS update.

    Reply
  26. What about apps that use Core Bluetooth instead of iBeacon? If you force close the app, will it still discover advertisements in the background or does this new behavior in iOS 7.1 apply to iBeacon and geofencing only?

    Reply
    • I’ve been wondering this too – anyone know if core bluetooth with continue to run in the background after a force close?

      Reply
      • Jacob

        Have you been able to get a definitive answer on Core Bluetooth? In my initial tests it looks like my app is not scanning after a restart or swipe up close. Wondering if I’m implementing incorrectly, or if indeed this does not apply to Core Bluetooth.

        Reply
    • Jacob

      Have you been able to get a definitive answer on Core Bluetooth? In my initial tests it looks like my app is not scanning after a restart or swipe up close. Wondering if I’m implementing incorrectly, or if indeed this does not apply to Core Bluetooth.

      Reply
  27. This is very cool. Thanks.

    I’ve also just watched attended this iBeacon 101 webinar and it appears there are some traps to watch out for. But overall looks really easy to implement and no doubt will revolutionise the customer experience.

    Reply
  28. foresmac

    Now, if only Apple could get the switch between wireless networks to happen as fast.

    Reply
  29. This is really awesome news. My clients will be so happy that I can’t even tell you. Now iPhone will definitely do the things for which I was waiting for a quite long time.

    I am very much happy and thank you Apple for wonderful surprise gift. :) I love it….

    Reply
  30. I think this is bad idea. Any app the needs to run in background should be granted that right on the “Background App Refresh” menu. Allowing individual Apps to do so opens security and power consumption issues the average user many not be aware of, especially when they might rightfully assume such privileges are granted on the background app refresh menu. There is no reason to hide this, we need to be forthright with our users!

    Reply
  31. Dominik Pich

    For me – it is REALLY bad … or rather as bad as before ^^

    Reply
  32. Rohit Varkey

    Hey! I am a newbie to the whole beacon scene and your site has been amazing to help me understand and get introduced to the world of beacons.

    About being able to send notifications without the app running in the background, is it necessary to have at least one app(looking for different UUID’s) that requires a BLE scan running in the background for the force closed app to benefit?

    I’m using the Locate for iBeacon app configured to recognise my Mac, and another app which is looking for a different random UUID. When I force close only Locate and run the other app(even if it’s in the background) and turn on my Mac transmitter, I am getting notifications from Locate. But when I force close both of them, this doesn’t work anymore. Is there something I’m missing here?

    Thanks in advance!

    Reply
    • Rohit Varkey

      Seems like I was wrong! I installed the MyBeacon app and checked and it’s working even without any BLE apps in the background.

      Reply
  33. Hammer

    Hi,
    My testing on ios 7.1 when app is in background mode shows there is still a long delay for notification to come. Am I the only one experiencing this issue?
    regards
    Hammer

    Reply
  34. John Donohoe

    Greetings,

    Related to the beacon changes that iOS7.1 brought, has anyone else noticed that CoreBluetooth scanning is no longer available when the phone is in locked mode but iBeacons is? We were running experience with BLE beacons that were not iBeacons when iOS7.1 was pushed and it killed the phone’s ability to wake up when locked.

    Reply

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>