Найдите маяки Eddystone с помощью Nearby Google API

Я прикрепил данные к маякам Eddystone с помощью API Proximity Beacon. Я хочу получить вложения Beacon с помощью Nearby Messages API.

Я выполнил шаги, указанные на странице https://developers.google.com/nearby/messages/android/get-beacon-messages.

Но я не могу читать вложения Beacon. Метод onFound() не вызывается


person user5197215    schedule 08.09.2015    source источник


Ответы (3)


Проверьте следующее...

  • Установите обратный вызов для ответа на подписку и вызовите startResolutionForResult для объекта Status, если статус был APP_NOT_OPTED_IN . См. пример github

  • Убедитесь, что вы включили Nearby API в консоли разработчика для своего приложения. Шаг 3 здесь

  • Используйте Strategy.BLE_ONLY в вызове для подписки

  • Наконец, если ничего из этого не помогает, попробуйте отдельное приложение для сканирования BLE, чтобы убедиться, что маяк действительно вещает.

Если вы хотите опубликовать более полный пример кода, один из наших инженеров может взглянуть на него.

(Я работаю над Nearby API)

person Andrew Bunner    schedule 12.09.2015
comment
Спасибо, Эндрю .. Я проверил приложение для сканирования BLE, и маяки транслируются, а также я выполнил первые два шага, перечисленные вами. Я использую тот же код в примере с github и смог обнаружить устройства Android поблизости. Чтобы обнаружить маяки, я изменил метод подписки Nearby.Messages.subscribe(mGoogleApiClient, mMessageListener, PUB_SUB_STRATEGY) на Nearby.Messages.subscribe(mGoogleApiClient, messageListener, Strategy.BLE_ONLY). - person user5197215; 14.09.2015
comment
Ницца! Рад, что вы решили это. Я обновил свой ответ выше, упомянув Strategy.BLE_ONLY... мы убедились, что код в нашей страница-маяк отражает это - person Andrew Bunner; 10.10.2015
comment
Извини, Андрей, я не правильно прокомментировал. Я хотел сказать, что даже после попытки я не смог обнаружить маяки. - person user5197215; 26.10.2015
comment
Вы использовали тот же идентификатор проекта консоли разработчика в вызовах службы Proximity Beacon, что и в подписном приложении? По умолчанию вложения маяка связаны ACL только с вашим проектом — приложение должно иметь ключ API, связанный с тем же проектом, который вы использовали при добавлении вложений. - person Andrew Bunner; 27.10.2015

Еще одна идея: убедитесь, что ключ API в вашем манифесте относится к тому же проекту Google Developers Console, который вы использовали, когда прикрепляли свои данные к маякам. Вложения маяка являются частными для проекта, который их создал.

person Joe Farfel    schedule 15.09.2015
comment
Я попытался использовать тот же ключ API, что и для API Proximity Beacon, но все еще не смог обнаружить маяк. - person user5197215; 18.09.2015

Еще одно предложение для всех, кто читает этот вопрос, у кого проблемы с подключением. Снято из другого ответа:

Это может показаться странным, но попробуйте включить и выключить Wi-Fi. Многие более дешевые устройства действительно плохо работают с Bluetooth и не могут подключиться, но по какой-то причине выключение и включение Wi-Fi устраняет проблему на некоторое время.

У меня была похожая проблема - все в моем коде было правильно, но не обнаруживало маяки. Я даже пробовал с приложением производителя, и их приложение тоже не смогло обнаружить маяк (но их версия для iPhone смогла). Я выключил свой Wi-Fi, затем снова включил, и приложение производителя заработало, как и мое.

person JimBobBennett    schedule 04.03.2016