Соседний API MessageListener не вызывает обратные вызовы - PullRequest
0 голосов
/ 23 ноября 2018

Я пытаюсь отправить сообщения Beacon с моего маяка Eddystone (micro: bit) в мое приложение Android, используя Ближайший API .Я буквально скопировал весь их код из документации, но обратные вызовы onLost и onFound никогда не запускаются.Приложение начинает слушать, и тогда ничего не происходит.Я знаю, что маяк в порядке, потому что я могу получать сообщения на Bluetooth Beacon Interactor на моем ПК.Это мой код:

 mMessageListener = new MessageListener() {
     @Override
     public void onFound(Message message) {
         Log.d("HomepageActivity", "Found message: " + new String(message.getContent()));
         mMessageContent.setText(message.getContent().toString());
     }

     @Override
     public void onLost(Message message) {
         Log.d("HomepageActivity", "Lost sight of message: " + new String(message.getContent()));
     }
 };


@OnClick(R.id.mSubscribe)
public void subscribe() {
    Log.i("HomepageActivity", "Subscribing.");
    SubscribeOptions options = new SubscribeOptions.Builder()
            .setStrategy(Strategy.BLE_ONLY)
            .build();
    Nearby.getMessagesClient(this).subscribe(mMessageListener, options);
}`

Это полное сообщение об ошибке, которое я получаю в LOGCAT: https://pastebin.com/1UwJ37TV

1 Ответ

0 голосов
/ 23 ноября 2018

у SubscribeOptions.Builder есть один метод .setCallback() ...

, который позволяет назначить SubscribeCallback (которого вам может не хватать).

этого обратного вызоваесть только один метод onExpired().игнорирование истечения вероятнее всего вызвало сбой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...