Уведомления, «уведомления с ответом» и всплывающие сообщения.
Все типы оповещений работают из любого контекста приложения – и в экранах и в фоне. С помощью уведомлений можно организовать оповещения о новых сообщениях, выполнении операций и т.д.
Самое простое уведомление – всплывающее внизу. В Андроиде это называется toast, в каком-то смысле аналог «Сообщить» в 1С. Пользоваться просто – поместите в переменную toast текст сообщения. Например так:
Переменные.Вставить("toast","Привет мир!");
Уведомления (notification) также отправлять несложно. У уведомлений должен быть номер чтобы можно было обратиться повторно, например в начале долгой задачи послать уведомление «Началась обработка» а потом по этому же номеру «Обработка завершена». Пример:
Переменные.Вставить("basic_notification","[{""number"":1,""title"":""Информация"",""message"":""Привет мир!""}]");
Уведомления с ответом (доступны начиная с Android Oreo) – такие же уведомления, но в них пользователь может написать ответ. Доступен обработчик ответа, например в котором можно прописать отправку ответа на нужный сервис.
Распознавание дат и чисел.
Распознавание дат может применяться для контроля за выкладкой товара и просрочкой, приходования серий напрямую «с коробки» и многих других применений. Даты часто идут вместе (например дата производства и срок годности), это учитывается в алгоритме распознавания.
В отличии от режима «поиска артикула» ранее реализованного в платформе, в котром программа точно знает что искать в видеопотоке (ищет конктерно сочетание символов из переданного набора) не гарантирует 100% точность, но тесты на практике показали очень хорошую стабильность, точность и скорость распознавания дат (на практике 100%). Числа чуть похуже но предполагается что полученные значения будут проверяться в алгоритме.
Высокая эффективность режимов распознавания реализуется за счет того, что в отличии от классического OCR программа хоть и не «знает что искать» но «знает формат» того что нужно искать, а также за счет статистических проверок.
Примерно так это выглядит:
Регламентные операции, запуск фоновых(асинхронных) задач и синхронного кода Python
В отличии от ранее запущенного выполнения обработчика Python по расписанию (которое работает как сервис и запускается по общему расписанию, установленному в настройках) добавилась возможность добавлять в конфигурацию сколько угодно обработчиков, работающих по расписанию в фоне с периодичностью от 1 миллисекунды.
Также появились команды запуска кода Python в UI-потоке приложения и в фоне (например длительные команды которые не должны прерывать работу пользователя) – RunPy и RunPyThread
Работа с речью через команды.
До сего момент работа с речью (синтез и распознавание) была доступна только через конструктор экранов, но так как появились фоновые процессы, то теперь можно озвучивать свои сообщения в люом контексте. Предупредите кладовщиков чтобы не пугались если их ТСД вдруг заговорит)
Работа с модальным диалогом по-новому
До этого существовала возможность вызова обычного экрана в модальном режиме (StartScreeen) а сейчас появился диалог в стиле OC Android с актуальным дизайном, который можно наполнить своими полями ввода в различном дизайне и расположении, просто указав контейнер из которого это взять, а можно не наполнять и использовать как диалог вопроса. Также можно переопределить заголовок и клавиши – написать свои названия. Т.е. диалог может использоваться для ответа на вопрос(не содержать полей ввода а только вопрос и кнопки). Диалог возвращает события в зависимости от того, какая кнопка нажата
Поле ввода с автозаполнением и поле ввода с событием
Поле ввода с автозаполнением работает как классическое андроидовское поле с автозаполнением – заранее передаем ему список значений, при наборе первых букв он показывает варианты.
Поле ввода с событием – обычное текстовое поле, но генерирующее событие при вводе текста для того чтобы перерисовывать что то на экране, например таблицу.
Прочее – документация и пример фоновой синхронизации по расписанию.
Еще я в очередной раз привел в порядок документацию. В частности, появился раздел – «Справочник по все командам» чтобы собрать в одном месте все команды а также отдельный раздел по CV. А также в демке появился пример фоновой синхронизации на питоне, простой пример как фоном подгружать изменения справочников на мобильное устройство. По этому примеру я даже снял видео с разбором, чтобы показать как делать скрипты на питоне с работой с SQL СУБД на YouTube.