Комментарии 10
Добрый день! Можете подсказать в строчке webOS.service.request('luna://com.webos.service.connectionmanager'
- luna это какой-то протокол? чот быстро нагуглить не смог.
и в этом сниппете:
if (value === webapis.network.NetworkState.GATEWAY_CONNECTED) {
callback(true);
} else if (value === webapis.network.NetworkState.GATEWAY_DISCONNECTED) {
callback(false);
кажется что проверяется сетевая связность до гейтвея локальной сети а не интернета)
Добрый,
Это сервис встроенный в webOS, который предоставляет API для работы нативными функциями операционки
https://webostv.developer.lge.com/api/webos-service-api/intro-lunaservice/
Это пример из официальной документации Tizen.
Интернет как такойвой Tizen не позволяет проверить, а этот эвент отрабатывает одновременно с нотификацией от тайзена, что соединения нету.
Решение к которому вы пришли (если обстрагироваться от реализации), присуще по своей сути любой ОС или ЯП и т.д. Ведь что такое для устройства отсутствие сети? Правильный ответ будет, отсутствие Линка на интерфейсе. ИМХО что либо другое этот отсутствие связи между конечными узлами, что как раз и можно диагностировать "пингом" или как в данном случае поднятием конекта. Ведь даже если бы ОС давала такое апи, там под капотом было бы тоже самое, пусть и не в виде проверки кода http ответов.
Получается, что так.
И вывод, что Tizen под капотом что-то делает такое самостоятельно, хоть и с большим интервалом, а WebOS такое не делает вообще
Я бы в принципе не доверял реализации встроенной в систему, узлы которые чекает система за ранее не известны, как и их доступность в зависимости от многих факторов, таких как региональные блокировки, устаревание апи в следствии чего пингуемый хост может уже быть не актуальный и т.д.
Как проверить сетевое подключение на Smart TV (WebOS и Tizen)