Я создал приложение, которое превращает телефон в веб-камеру и использует телефонное соединение для отправки изображения в Интернет-пространство.
Я использую рекламную активность, при которой диспетчер тревог запускает службу каждые 5 или 15 минут. Чтобы выполнить все действия службы, я выполняю блокировку пробуждения, но она сбрасывается после завершения службы.
Все это отлично работает с мобильной связью, но не с Wi-Fi.
Я установил в параметрах Wi-Fi политику «НИКОГДА» для режима сна по Wi-Fi.
Но через некоторое время (не всегда одно и то же) телефон, кажется, переходит в режим энергосбережения: значок Wi-Fi еще отображается в строке состояния, но телефон не может подключиться. Даже если я использую браузер ... поэтому я должен отключиться и снова подключиться вручную.
Сообщение в logcat: уведомить о разрыве соединения (IOEx), закрыть соединение
Даже при включенном телефоне !!!
почему? (1)
Проведение эксперимента с другим приложением, созданным действием, которое запускает службу, всегда работающую с блокировкой пробуждения. Поэтому я добавил блокировку Wi-Fi, чтобы быть уверенным в подключении, но также этот метод иногда работает, а некоторые другие нет.Всегда одно и то же notify conn break (IOEx), закрытие соединения
почему? (2)
Последний эксперимент основан на первом приложении (диспетчер сигналов тревоги), и чтобы убедиться, что Wi-Fi не переходит в спящий режим / режим энергосбережения (ведь один ??), я переключил телефон в режим полета после выполнения кода, и я выключаю его (соединение включено), когда начинается цикл. Это работает нормально в течение двух дней, но только иногда это работает (каждый час или два вместо каждых 5 минут, или иногда не работает в течение всего дня, а затем перезапускается без какой-либо причины ...). Итак, почему режим полета иногда не восстанавливает прежнее соединение Wi-Fi? (а иногда и бывает?) (3)
Телефон представляет собой Samsung Galaxy ACE с оригинальной версией 2.2 и ВСЕГДА подключается для зарядки.