Мы смотрим в будущее, не забывая о традициях.
В N-ской больнице впервые потеряли электронную медицинскую карту.
©народный фольклор
Будущее у нас в руках, иногда в кармане, это, конечно же, мобильные устройства, а о традициях нам напоминают гуру экспертов по технологическим вопросам, говоря о регулярных выражениях в командной строке. Объединив, получим приложение на мобильной платформе 1С Предприятие, позволяющее разбирать все, что может быть разобрано в терминале linux и выводить полученный результат типовыми методами системы компоновки данных с красивыми отчетами и графиками.
Кратко:
Тут лучше было бы просто установить приложение и покрутить его, тем более, что оно ничего особенного в плане разрешений не требует.
Но ...ссылка на загрузку Google Play ... в стадии реконструкции
Google не нравится разрешение MANAGE_EXTERNAL_STORAGE, не то, чтобы совсем не нравится, но если приложение не рушится при его отсутствии, то поддержка считает, что оно и не нужно.
Отклонено: Правила использования разрешения на доступ ко всем файлам. Необходимо использовать MediaStore API или не запрашивать доступ к файлам.
На эти же грабли наступили в мастер-классе по мобильной разработке в среде "1С:Предприятие" 1С:Счетчик ворон. Подробнее...
Можно попробовать обойти это разрешение добавив в текстовый файл заголовок от медиа-файла, но в первом релизе не хочется этого делать, поскольку это больше вопросов вызовет по безопасности у пользователей.
В следующем релизе поэкспериментирую.
Прикреплять прямые ссылки на загрузку в публикации без согласования, запрещено правила сайта.
Пока непонятно, будет ли интерес к этой публикации, не буду беспокоить зря модераторов.
Есть
Ссылка на загрузку RuStore но сам RuStore тоже не у всех установлен.
Можете посмотреть видео
Кому просто интересна тема мобильной разработки на 1С или он не хочет тестировать приложение на основном устройстве, может читать с середины, там, чтобы два раза не бегать, небольшой обзор эмуляторов android и утилит доступа через adb.
О запросе разрешения Доступ ко всем файлам.
Базовая функциональность моего приложения состоит в том, то что оно строит графики и диаграммы на основании файла данных json загружаемого из интернет или создаваемого приложением termux. Обычно этот файл находится в каталоге Загрузки и моему приложению нужен доступ к нему.
Без разрешения Доступ ко всем файлам этого не получается сделать на устройствах с новыми версиями андроид.
Моему поколению, чтобы уронить телефон в унитаз,
Надо было сначала оторвать его от стены.
©анекдот.ру
Кому может пригодиться приложение:
Опытный сисадмин количество ошибок в 1С определяет по гулу, доносящемуся из кабинета бухгалтерии, а их подробное описание получает у менеджеров в курилке.
Слабые духом для этого используют другие способы, например отчеты по технологическому журналу, логам ОС и т.п.
Средств для этого предостаточно, от Elasticsearch до скриптов написанных на коленке.
Добавлю к ним немного мобильности.
- если вы ничего не понимаете и не хотите знать про bash, perl, скрипты, то можете пользоваться встроенными в приложение пакетами обработок и их хранилищем на Яндекс Диске, надеюсь, оно будет пополняться.
Для этого достаточно собрать технологический журнал и нажать пару кнопок в приложении. - если вы готовитесь по направлению Эксперт по технологическим вопросам, то вполне можете использовать приложение в образовательных целях, причем его в прямом смысле слова можно положить в карман.
- для тех, кто уже достиг высот, это неплохая возможность систематизировать свои наработки и поделиться ими с другими.
- для маркетологов, можете добавить в список услуг компании - компьютерная диагностика у заказчика, как это делают мастера в автосервисе, и с загадочным видом на планшете полистать список ошибок.
В любом случае, вы сможете выполнить практически любую из задач, из раздела экспертов 1С, на марше, в дороге, на планшете или мобильном телефоне.
Как работает приложение:
Оно загружает в таблицу из рабочего каталога приготовленный специальным образом файл json, по сути таблицу данных, далее средствами СКД строит по этим данным отчет. Пример:
В демо-варианте настроек отчетов, это будут данные о вашем мобильном устройстве
которые вы получите в termux
Принцип работы:
Ядром системы является справочник настройки отчетов.
Он объединяет в себе все необходимое для формирования того или иного отчета.
В типовом варианте это
- Настройка технологического журнала (необязательный реквизит) , широко известный в узких кругах файл logcfg.mxl.
По нему собирается лог в исследуемой системе.
- Скрипт командной оболочки и Скрипт парсинга. Эти файлы выгружаются в рабочий каталог, который задается на уровне всей конфигурации константой и может быть изменен для конкретного элемента справочника Настройки отчетов, всегда с именами script.sh и parse.pl.
Эти два реквизита обязательны к заполнению, т.к. содержат в себе основную логику по формированию файла json на мобильном устройстве.
Если вы не собираетесь использовать termux, они могут быть пустыми файлами. - Схема СКД, обязательный реквизит. Он будет передан в универсальный отчет и по нему и загруженной таблице данных будет построен отчет.
- По умолчанию, после выполнения отчета файл данных удаляется, чтобы не захламлять устройство.
Реквизит Не удалять файлы результатов служит для отключения этого. - Файл данных можно получать из ЯндексДиска, это расширяет варианты использования приложения, например вы можете файлом данных передавать актуальные остатки по складам, а менеджеры в полях настроят вариант отчета под себя или под клиента, неожиданный, но вполне возможный вариант использования.
Реквизиты Загрузить файлы результатов с адреса и Адрес файла результатов за это отвечают. - Автор и Описание позволят не запутаться в пакетах обработок.
Пакет обработок - это zip архив в котором все вышеупомянутые файлы собраны.
Пакет может быть загружен в справочник Настройки отчетов как локально, из каталога устройства, так и из ЯндексДиск.
Сейчас там размещены несколько различных вариантов, на которых можно как быстро понять логику приложения, так и использовать в реальных задачах.
Последовательность действий:
- Одноразово после установки termux нужно будет произвести его настройку.
termux это по сути подсистема linux в андроид, по своим возможностям возможно превосходящая, аналог windows 10.
На начальной странице приложения содержатся настройки для обработки файлов perl.
В 90% все пройдет нормально с первого раза, главное, чтобы репозитории termux были доступны.
Из тонкостей которые надо учитывать, команду cpan App::cpanminus надо выполнить дважды, не спрашивайте почему.
Более подробно про termux можно почитать здесь... - Вы выгружаете настройку logcfg.mxl с устройства и взамен, когда соберете, загружаете в рабочий каталог собранный технологический журнал.
- Далее копируете ссылку запуска скрипта termux и нажимаете кнопку Сформировать отчет, при этом в рабочий каталог выгрузятся скрипты и откроется универсальный отчет с загруженной схемой СКД.
- переключаетесь на termux, вставляете команду запуска, выполнянете ее и получаете файл результата, если все прошло без ошибок.
Каждая строка файла результата это массив json, первая строка это заголовки колонок, по ним подготавливается макет СКД.
Все примеры можно скачать с ЯндексДиска и посмотреть. - В универсальном отчете выбираете свои настройки или просто нажимаете Сформировать и получаете отчет.
Предустановленным является только количество выводимых строк, потому, что termux спокойно и со сравнимой скоростью может разобрать каталог логов размером 10 Гб, приложение за десяток секунд загрузит файл гигабайтного размера, но мобильный СКД с огромным трудом выведет миллион строки и я не очень представляю, зачем будет нужен, кроме теста на выносливость, такой отчет.
На ЯндексДиске приложения сейчас 4 пакета обработок
- Информация о системе (демо) - служит для проверки, что вы все установили и настроили корректно
- Товары на складах (демо) - пример нетипового использования приложения
- Топ серверных вызовов - выполнен по мотивам курсов и экзамена 1С:Эксперт по технологическим вопросам.
Он содержит настройки технологического журнала, для сбора информации по серверным вызовам исследуемой базы 1С.
Выводит данные в разрезе контекста вызова.
Файлы технологического журнала должны находиться в подкаталоге ./tech-log рабочего каталога. - Рекомендованный технологический журнал - выполнен по мотивам книги "Методическое пособие по эксплуатации
крупных информационных систем на платформе «1С:Предприятие 8». Издание 2."
Он содержит технологический журнал, рекомендованный к настройке на продукционных площадках.
Рядом с ними лежат примеры файлов result.json, которые должны получиться на выходе.
Гаишник стоит на посту, зима, холод собачий.
К нему подходит мальчик с вопросом:
-Дяденька, сколько сейчас времени?
-Летом, летом приходи мальчик...
©анекдот времен СССР
Дальнейшая судьба разработки:
Летом навряд ли продвинется, а далее если будет интерес, то выложу конфигурацию на гитхаб и доделаю пакеты обработок по списку с ИТС
Перечень данных, необходимых для расследования технологических проблем.
Кто хочет получить конфигурацию раньше и/или прислать свои варианты пакетов, на это собственно и расчет, вы знаете где меня искать.
Порог - от 500+ в области администрирование и разработка.
Если хочешь сделать что то хорошо,
сделай это сам.
©народный фольклор
Если ты делаешь что то хорошо,
то всегда найдется азиат, который сделает это лучше.
©народный фольклор
Битва эмуляторов...
Некоторое количество байт утекло со времени публикации Тест скорости работы мобильной платформы 1С и появилось профессионально созданное приложение с возможностью сравнить скорость большого и малого братьев: Geekbench 6 - Cross-Platform Benchmark
Им и будем измерять скорость.
Для тех, кто начал чтение с середины, в начале статьи мы договорились чтить традиции, поэтому в начале обзора будет эмулятор AVD от Google. Не самый приятный наощупь, долгое время не признающий процессоры AMD, в виртуальных средах запускающийся реже, чем приходит Новый Год, с каждой версией становящийся все быстрее и быстрее, по заявлениям маркетологов google, и все равно о нем все вспоминают с теплотой. Ни одна книга и ни один академический курс по программированию для Android него не обходятся. У тру-девеллоперов под андроид и сейчас чешутся руки, чтобы навтыкать мне за неуважительное к нему отношение. Да и набор возможных устройств впечатляет, от Wear OS до ТВ-приставок.
Впрочем, продвинутые разрабы предпочитают Genymotion. По крайней мере так ,было раньше.
Те, кто решил посвятить всего себя мобильной разработке, безусловно не пожалеют N количество часов в гугле, чтобы привести эти два эмулятора в чувство, ну или столько же времени выпрашивая помощнее компьютер.
Из коробки они оба не осилили запуск Geekbench.
Genymotion еще и два десятка виртуальных сетевых адаптеров установил.
Если хочется быстрее
то на помощь приходят трое из ларца, одинаковых с лица, китайские эмуляторы НифНиф, НафНаф NoxPlayer (самый старый и стабильный проект),
LDPlayer (самый быстрый и отзывчивый) и догоняющий их,
но переливающийся рекламой как рождественская елка MEmu Play,
впрочем, никто не отменял windows firewall.
Их последние версии Android 9 64-x приведены в полный порядок, можете выбирать любой.
Drag-and-drop, буфер обмена, рут, небольшой набор устройств, все из коробки со стартом пара минут.
Старый отец решил поделить все свое состояние между сыновьями.
Одному досталась мельница, другому - осел, третьему - кот.
Ну, офигеть...: сказал четвертый сын.
©анекдот.ру
На самом деле есть еще четвертый эмулятор GameLoop от Tencent Gaming Buddy, но он в нынешней версии не позволил устанавливать apk с диска, хотя пару месяцев назад все было хорошо.
Минус всех - реклама и обмен по сети с китайскими серверами.
Поэтому вполне резонно взять и собрать эмулятор своими руками. Тем более для этого все есть. А именно Android OS на x86 и его русскоязычное сообщество.
Цитата оттуда
После этого у вас в сети появится быстрый, без рекламы, чистый android практически любой свежей версии +
RemixOS.
Желающие немного спрямить извилистый путь установки из iso могут зайти на osboxes.org, выбрать образ по вкусу и стартовать его в пять минут.
Быстрее? windows версии на том же хосте.
Способов дотянуться до устройства с помощью adb тоже прибавилось с момента написания Младший брат Большого Брата? (управляем мобильным устройством с компьютера)
Удаленное управление, поиском по гитхабу и ему подобным найдется несколько более-менее активно развивающихся графических оберток над scrcpy.
- srevinsaju/guiscrcpy на питоне
- barry-ran/QtScrcpy на Qt
- Tomotoes/scrcpy-gui на Electron
две последние от китайских товарищей
Простая передача файлов
- в моем топе остается плагин к Far manager FarDroid
- Aldeshov/ADBFileExplorer
- и гиковский путь - поставить ssh на termux
Вне категории ADB-GUI-Tool
На этом откланиваюсь и желаю успехов освоении мобильной платформы 1С, знаний Экспертов по технологическим вопросам и просто хорошей погоды.