WedX - журнал о программировании и компьютерных науках

Отключение одного отправителя приводит к отключению всех отправителей

Я экспериментирую с модифицированной версией примера приложения Cast-HelloText, в частности, когда два отправителя подключаются к приложению одновременно.

Вызывается обратный вызов castReceiverManager.onSenderConnected(), и я вижу, что у меня подключено 2 отправителя (используя window.castReceiverManager.getSenders().length), и оба затем могут отправлять сообщения.

Однако, когда любой из них отключается, приложение закрывается. Я попытался зарегистрировать количество отправителей, подключенных в обратном вызове castReceiverManager.onSenderDisconnected() (без успеха), и я прокомментировал вызов window.close().

Похоже, что приложение закрывается (chromecast возвращается на главный экран) при отключении любого отправителя.

Любые идеи о том, как иметь приложение с более чем одним отправителем, которое не завершается, когда какой-либо отправитель отключается?

23.02.2014

Ответы:


1

Проверьте своего отправителя, чтобы увидеть, что он делает, когда происходит разъединение. Немодифицированная версия на Github вызывает Cast.CastApi.stopApplication(mApiClient), когда вы отключаете отправителя от получателя, и этот вызов останавливает приложение на получателе. Если вы не хотите, чтобы это произошло, вы не должны вызывать этот метод, но тогда вам нужно убедиться,

  • для вашего приложения имеет смысл продолжить
  • убедитесь, что ваш ресивер обрабатывает вещи правильно
23.02.2014
  • Бинго! Я еще не тратил время на изучение API-интерфейса отправителя или примера кода (продирался через API-интерфейс получателя), и на самом деле вы попали в точку. Получатель останавливается, когда у него больше нет подключенных отправителей, так что об этом позаботится. Спасибо. 23.02.2014
  • Кстати: в примере кода это означает, что код if (window.castReceiverManager.getSenders().length == 0) {window.close();} (в Receiver.html) является избыточным, поскольку отправитель сначала завершает приложение - а так немного вводит в заблуждение. 23.02.2014
  • Это не лишнее; ваш отправитель может выйти за пределы диапазона Wi-Fi или может перейти в спящий режим, поэтому он может отключиться без вашего ведома, поэтому получатель имеет этот код. Опять же, это зависит от характера вашего приложения, должно ли оно останавливаться, если нет подключенного отправителя, или оно должно продолжать работу; если это, скажем, Netflix, я бы хотел, чтобы он продолжал работать, если все подключенные устройства перейдут в спящий режим и потеряют связь. 23.02.2014
  • ХОРОШО. Я вижу это сейчас. Спасибо, что указали на другой случай, когда отправитель может отключиться. 26.02.2014
  • Спасибо за это объяснение 01.06.2015
  • Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]