Имя: Пароль:
1C
1С v8
Обновление внешних компонент в мобильном приложении
0 belogant
 
05.02.21
18:27
Дорого дня.
Публикую приложение с новыми драйверами БПО. Захожу в мобильную конфигурацию с установленной галкой "Перезапуск из конфигуратора". Конфигурация обновляется, а драйвер, который уже используется, нет.
Те, что еще не были использованы, подкачиваются новые при выборе. Если зайти под рутом и удалить используемый драйвер, то он закачивается нормально.
Тоже попробовал на Мобильной кассе для разработчиков. Та же проблема.
Если приложение собрать, то при обновлении обновляется все, в том числе и уже используемые драйверы без проблем.
Кто знает, так было задумано? Или можно как то заставить 1с предприятие автоматически обновлять внешние компоненты автоматически при обновлении конфигурации?
1 Garykom
 
гуру
05.02.21
19:13
(0) переименовать макет с вк
2 belogant
 
06.02.21
12:30
Макет из БПО, не хотелось бы его постоянно переименовывать. Но и собственно не работает так. Возможно будет работать, если переименовывать еще и сами драйвера, но это слишком сложно.
Костыльный способ есть:
Сначала обновить конфигурацию, потом сделать резервное копирование.
Далее удалять базу, при этом чистится каталог с файлами и внешние компоненты вместе с ними.
Потом поставить ее обратно и загрузить резервную копию. С Мобильной кассой так работает.
Но хочется все таки какой то нормальный способ автообновления, а не костыльный.
3 belogant
 
06.02.21
12:31
Это костыль для случая, когда нет рута. С рутом проще - просто удалить в каталоге с фалами фалы внешней компоненты.
4 Garykom
 
гуру
06.02.21
13:02
(3) Гыгы. В курсе что даже без рута сама 1С программно кодом может легко "просто удалить в каталоге с фалами фалы внешней компоненты"
5 belogant
 
06.02.21
13:34
Действительно, что то не подумал об этом ), но опять таки, это костыль и это в случае со своей конфигурацией, а если конфа чужая и править ее нельзя, в расширения костыль пихать?
Все таки интересно почему в собранном все обновляется, а в режиме предприятия нет.
6 belogant
 
06.02.21
19:56
Провел пару экспериментов. По разному работает НачатьУстановкуВнешнейКомпоненты. При работе в собранном приложении она обновляет внешние компоненты, а при запуске в режиме предприятия нет. Версии платформы в обоих случаях одинаковая. Пробовал на версиях 8.3.17.76 и последней 8.3.18.47.
Может быть какие настройки у платформы есть по кэшированию или еще какие, не может же просто по разному эта функция работать ) ?
7 Cyberhawk
 
06.02.21
20:08
(5) Потому что в собранном *.so-файлы (ВК) входят в apk. А в платформе разработчика они подгружаются с веб-сервера.
8 belogant
 
06.02.21
20:29
(7) Ну и что, логика должна быть одинаковая, не важно тащит он их из apk или с сервера.
А так получается, что я не могу обновить компоненты, работая на платформе разработчика кроме как всякими костыльными способами.
9 Garykom
 
гуру
06.02.21
22:50
(8) когда у тебя платформа то можно запускать второе приложение и оно будет иметь доступ к файлам всех приложений
ну или снос и установка платформы
10 belogant
 
06.02.21
23:37
(9) Это я понял, спасибо, в отдельной конфе сделал чистку, все работает.
Хотя логика разработчиков 1с не очень понятна, либо это баг.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn