Troubleshooting Eddystone-URL on Android


Important: This web page is provided for historical purposes.

On 25 October 2018, Google announced they are discontinuing Nearby Notifications on Android. This mechanism should no longer be used.

Read about using Beacons for Marketing


This post assumes you already know about managing Physical Web URLs and the use of SSL.

What do you do if you have set everything up and aren’t getting any notifications? Here are some things to try and do:

  • Internet connectivity? Android connects to a Google proxy and then to your site to get information, for example the web site title, to show to the user. If there’s no or poor (slow) Internet connectivity, the beacon will appear not to be detected. To test connectivity, enter your URL into Chrome on Android and see how long it takes. Anything more than a few seconds will cause the Google proxy to give up.
  • Is it the URL? Try a URL that you do know works for someone else, for example one generated by phy.net or our test URL http://bzone.click/bz
    If you think it’s a problem with the URL, you might like to try using Google’s Physical Web URL validator. However, be aware that the validator itself has faults and we have seen URLs which work that fail with the validator.
  • Is it your URL content? Any URL content, for example images, must also be accessed via SSL (https://) links.
  • Is it your URL shortener? Some public URL shorteners can get overloaded and when they take too long to respond, the Google Physical Web Proxy gives up. The total time for the shortener and your web site to respond needs to be less than 3 seconds. Test the shortener speed and your web site speed in a normal web browser. Try a different URL shortener.
  • Is it your web server?  If you have control of the web server and it uses a Cache-Control header, make sure you set it to at least 24 hours so that it gives the Google Physical Web Proxy time to update it while using the old cached version.
  • Are you linking to the Play App store? Links to the Play store are not supported.
  • Have you waited long enough? While notifications usually arrive in the order of seconds, on some phones this can be minutes. Wait at least 10 minutes before concluding it isn’t working. Turning the screen off and on can sometimes cause Android to re-scan for beacons.
  • Is it Android? Try the Physical Web app. Note that notifications are not guaranteed. If Nearby has already sent you notifications recently then it may back off to make sure it is not annoying you.
  • Are you running Android 8.0 (Oreo)? There are problems with Android 8.0. We have submitted an issue with Google.
  • Is it your phone? Really. Some phone have problems with Bluetooth. Try a different Android phone.
  • Is it the beacon? Use the ‘nRF Connect’ app to determine if it sees the beacon and the correct URL.
  • Is the beacon being detected? You can test if the beacon has been set up correctly by going to Settings … Google … Nearby and your beacon will be shown (you might need to use the refresh button at the top).
  • Have you previously dismissed the notification?  If the notification has been dismissed on a device recently, that device may not show another notification a period of time. You can reset the backoff policy by opening Settings … Google … Nearby.
  • Is your notification blocked? If notifications have suddenly stopped working, Google might now be blocking your URL. The Google proxy has a scoring algorithm such that a notification won’t show if it has not been well received by users. Try a new URL.
  • Is it the Google Proxy? We had a customer say that trying to use the Beacon Tools app, allowed their beacon to be seen even though registering via this app (as expected) failed because it wasn’t a Eddystone GATT beacon. [Only Eddystone GATT beacons can be registered using the Beacon Tools App.]  We are not sure if this really caused the beacon to be registered or if it was just a case of ‘Have you waited long enough?’ (above).
  • What’s going on in the Android OS? There’s a great post on StackOverflow that shows how to use ADB (needs Android Studio installed) to enable logging. There’s also another post from the Nearby team on how to get the Nearby logging.

Getting Further Help

Log a Physical Web Issue or communicate with the Physical Web team via the Physical Web discussion forum. You can also create a bug report and send it directly to the Nearby Team.