Homeui не работает в webView на Android

Всем привет,

Обнаружил проблему, когда webView использует Android System Web View то ни дашборды ни какой либо функционал не работает, падает сразу на загрузке с ошибкой javascript

Ветка testing

Если установить webView от Chrome то все работает

при использовании Android System Web View не работает c c 10 по 16 андроид

Откат до ноября не дал результата

Проверить можно через WebView Test приложение из PlayMarket или любое другое

Console: 03-24 08:31:05.550 [ERROR] "Uncaught TypeError: Cannot read properties of null (reading 'getItem')", source: http://192.168.7.254/main.508e078e7e5a9e7312fc.js (line:1)

Console: 03-24 08:31:05.560 [ERROR] "Uncaught Error: [$injector:modulerr] Failed to instantiate module realHomeuiApp due to:
Error: [$injector:nomod] Module 'realHomeuiApp' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

https://errors.angularjs.org/1.8.3/$injector/modulerr?p0=realHomeuiApp&p1=Error%3A%20%5B%24injector%3Anomod%5D%20Module%20'realHomeuiApp'%20is%20not%20available!%20You%20either%20misspelled%20the%20module%20name%20or%20forgot%20to%20load%20it.%20If%20registering%20a%20module%20ensure%20that%20you%20specify%20the%20dependencies%20as%20the%20second%20argument.%0Ahttps%3A%2F%2Ferrors.angularjs.org%2F1.8.3%2F%24injector%2Fnomod%3Fp0%3DrealHomeuiApp%0A%20%20%20%20at%20http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A95863%0A%20%20%20%20at%20http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A274089%0A%20%20%20%20at%20r%20(http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A273778)%0A%20%20%20%20at%20http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A274060%0A%20%20%20%20at%20http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A119544%0A%20%20%20%20at%20j%20(http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A96568)%0A%20%20%20%20at%20y%20(http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A119490)%0A%20%20%20%20at%20Qt%20(http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A118823)%0A%20%20%20%20at%20a%20(http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A104794)%0A%20%20%20%20at%20Te%20(http%3A%2F%2F192.168.7.254%2F662.3ac18e7ec82a8da91ac6.js%3A2%3A105107)", source: http://192.168.7.254/662.3ac18e7ec82a8da91ac6.js (line:2)

Здравствуйте!

Опишите пожалуйста подробнее: для чего вы используете webView и почему не используете традиционный браузер? Chrome, например.

Потому что разрабатываю приложение нативное с встройкой дашбордов

я перешел на GeckoView и проблема ушла, но осадочек остался :slight_smile:

Собственно вот, для HMI панели, с поддержкой домофона, SIP звонками с камер, RTSP video, и так далее
дашборд SVG wirenboard

1 Like

Интересно…нам мало что известно о таком способе использования веб интерфейса. Скажите, webView обязательный для вас инструмент (или приоритетный?). И есть ли еще какие-то для вас проблемы в интеграции веб интерфейса контроллера?

в общем и целом есть две возможности интеграции webview в нативное приложение, это стандартный webview системы или веб движок, например Gecko (Firefox) но в случае Gecko размер apk получается 300мб, а в случае стандартного в 10 раз меньше. Так что да, для любого эмбеддера стандартный webview приоритет.
например ionic, cordova для приложений на моб девайсах используют нативный webview и другие HMI, которые есть у меня, крутятся на cordova и каким то везением получилось что дефолтный webview там стоит Chrome, а так бы я намного раньше уткнулся в эту проблему.

Cordova еще позволяет делать бриджи из веб в нативный код, часть пишешь на веб (весь UI) а никзкоуровневые на java,kotlin, swift и рулишь нативом прямо из веб приложения на любом удобном фреймворке

вот кордова, автостарт, ожидание доступности веб интерфейса, никаких плясок с браузером и его поведением

и очень удобно делать SVG дашборды на wirenboard, homeassist не перевариваю

Добрый день.
Я правильно понимаю что используя webview загружаете (только) страницу дашборда? А при этом какой адрес (http|https) используете? Ну и на контроллере - включена ли авторизация?
В общем у меня не очень много компетенций по отладке но если будет достаточно данных - попробую привлечь разработчиков.

добрый день, использую вот так

http://192.168.7.254/#!/dashboards/svg/view/intercom?hmi

GitHub - mumg/wirenboard_intercom · GitHub проект над которым я работаю, создание интеркома для входной группы с дашбордами wirenboard, извините что ваш префикс использую, за то пользуйтесь на здоровье
я думаю этот проект будет востребован интеграторами, он довольно гибкий и расширяемый

тут я разреверсил протокол my_home.proptech и теперь поддерживаются все домофоны этого интегратора, конкретно у меня Дом.ру и несколько вызывных IP панелей Hikvision

Если открываю ссылку, аналогичную в браузере - то она работает.
Подозреваю что нужно именно мобильное устройство и использовать webview через, например, WebView Test?
Записал для разработчиков в пожелания.

да нужно именно WebView Test

Добрый день.
Разработчики написали что не гарантируем работу не в стандартных браузерах. Однако, интерфейс сейчас переписывается с angularjs на react и высоковероятно начнет работать, поскольку приведенные ошибки - как раз от angular.

добрый день, трудно представить более стандартный браузер чем android webview, буду ждать, спасибо