Всем привет! Решил завести канал чтобы выкладывать новые фичи платформы по мере их появления а не "паками" или "релизами". Надеюсь будет полезно тем, кто разрабатывает на симпле.
Screenshot_20220127-075418_Simple UI.png
202.6 KB
Итак, поехали. Первое, что скоро появится - раздельный режим конфигурации и обработчиков. Конфу можно выкладывать отдельно куда угодно (в т.ч. на Гитхаб), а на базу ставится простейшее расширение без объектов данных конструктора. Просто обновлять, можно вести в одном конструкторе несколько баз, не нужно заморачиваться с монопольным обновлением
Вторая важнейшая вещь - мультизадачность. Теперь платформа является "квазиоперационной системой" для конфигураций - позволяет быстро переключаться, независимо обновлять и многое другое. А сами конфигурации теперь автономны - т.е. подобно исполняемым файлам содержат все необходимое для работы - настройки соединения, собственного поставщика обновлений, запускаемые в фоне части и т.д. Этот список будет пополняться и о нем в двух словах не расскажешь. Но тенденция задана. Если раньше была конфигурация, какие то настройки отдельно, то сейчас автономные конфигурации и suip-файлы о которых я писал тут https://infostart.ru/1c/articles/1542393/
infostart.ru
Файлы-процессы, динамическая работа с формами и многое другое в Simple UI. Ноябрь 2021
Новый виток развития платформы дает новые возможности - теперь самостоятельными могут быть не только конфигурации, но и отдельные процессы в виде файлов, как "excel" или подобные форматы, только заточенные под оборудование, с питоном, VR и прочими плюшками.…
image_2022-01-28_07-38-26.png
20.8 KB
Наконец то можно переопределить стандартное меню и добавить свое
Screenshot_20220127-075600_Simple UI.png
29 KB
А также меню на экранах
добавлена постоянно обновляемая в фоне константа _internet_quality - показывает качество соединения. • WIFI_POOR
• WIFI_MODERATE
• WIFI_GOOD
• WIFI_EXCELLENT
• MOBILE_POOR
• MOBILE_GOOD
• MOBILE_EXCELLENT
• UNKNOWN
• WIFI_MODERATE
• WIFI_GOOD
• WIFI_EXCELLENT
• MOBILE_POOR
• MOBILE_GOOD
• MOBILE_EXCELLENT
• UNKNOWN
... и _is_internet_availible - проверка реального интернета путем пинга google.com. Хотя... возможно скоро придется поменять адрес))
Пришлось переделать пинг и качество связи. Непрактично. Теперь будет так:
image_2022-02-01_16-03-35.png
63.1 KB
Пинг в виде строки из двух чисел - время соединения с dns и время сокета с портом
1) надо задать пингуемый url с портом в _set_ping_url . Подчеркиваю, с портом обязательн. Например hashMap.put("_set_ping_url","https://www.google.com:443/%22)
2) в константу _internet_ping будет помещаться результат в виде строки из двух чисел с точкой запятой, например 5;15 . Сумма этих чисел это и есть пинг , а по отдельности - первое число это время определения dns, а второе время сокета с портом. Это настоящий пинг, как команда ping . Это в миллисекундах
Важно! Это все действо запускается по событиям при запуске и прочим другим, но асинхронно. Нельзя делать это синхронно потому что пинг может быть очнь долгий и повесит приложение. Это значит что при открытии экрана запустится пинг но его результаты будут доступны после того как экран отрисовался. Как быть? Тут несколько способов. На самом деле можно сделать произвольный таймер по расписанию люой (можно например просто такой сделать) когда будет выполняться этот таймер будет вычисление констант. Либо если такая частота не нужна то смотреть по поведению . при запуске он проверил, потом по событиям периодически будет запускаться и обновлять.
2) в константу _internet_ping будет помещаться результат в виде строки из двух чисел с точкой запятой, например 5;15 . Сумма этих чисел это и есть пинг , а по отдельности - первое число это время определения dns, а второе время сокета с портом. Это настоящий пинг, как команда ping . Это в миллисекундах
Важно! Это все действо запускается по событиям при запуске и прочим другим, но асинхронно. Нельзя делать это синхронно потому что пинг может быть очнь долгий и повесит приложение. Это значит что при открытии экрана запустится пинг но его результаты будут доступны после того как экран отрисовался. Как быть? Тут несколько способов. На самом деле можно сделать произвольный таймер по расписанию люой (можно например просто такой сделать) когда будет выполняться этот таймер будет вычисление констант. Либо если такая частота не нужна то смотреть по поведению . при запуске он проверил, потом по событиям периодически будет запускаться и обновлять.
3) также по флагу _listen_internet_quality в константу _internet_quality помещается результат оценки типа и качества сети
аналогично по тем же принципам.
аналогично по тем же принципам.
image_2022-02-01_18-40-49.png
19.4 KB
Релиз 9 в Google Play. Статья готовится.
