Я могу предложить вам использовать Systeminfo Publi c Web API для ваших целей.
Вы можете использовать:
tizen.systeminfo.getPropertyValue("ETHERNET_NETWORK", (s) => {console.log(s)}, (e) => {console.log(e)})
, чтобы определить, подходит ли сетевой кабель. подключен.
Вы можете добавить прослушиватель для уведомлений об изменениях этого статуса с помощью:
tizen.systeminfo.addPropertyValueChangeListener("ETHERNET_NETWORK", (s) => {console.log(s)})
, и вы будете получать события, когда кабель подключен / отключен.
РЕДАКТИРОВАТЬ: Вы можете использовать publi c Web API, чтобы определить, находится ли сеть в одном из двух состояний:
- сетевой кабель подключен к телевизору, но сетевой коммутатор не имеет rnet доступ ( кабель значение "ATTACHED" ):
> tizen.systeminfo.getPropertyValue("ETHERNET_NETWORK", (s) => {console.log(s)}, (e) => {console.log(e)})
SystemInfoEthernetNetwork {cable: "ATTACHED", status: "DISCONNECTED", ipAddress: "", ipv6Address: "", macAddress: "ab:cd:ef:ab:cd:ef", …}
- сетевой кабель не подключен к телевизору ( cable значение "DETACHED" ):
> tizen.systeminfo.getPropertyValue("ETHERNET_NETWORK", (s) => {console.log(s)}, (e) => {console.log(e)})
SystemInfoEthernetNetwork {cable: "DETACHED", status: "DEACTIVATED", ipAddress: "", ipv6Address: "", macAddress: "ab:cd:ef:ab:cd:ef", …}
В Web API не поддерживается регистрация приемника на физическом уровне, как указано в docs : "Изменение прослушивателя, зарегистрированного в свойстве ETHERNET_NETWORK, запускается при изменении свойств ipAddress и ipv6Address (сетевой уровень)."