AtolSmartLiteUtils
AtolSmartLiteUtils copied to clipboard
Проблема со сборкой APK
Классная компонента, все отлично работает на мобильной платформе. Но если попытаться собрать APK в сборщике мобильных приложений 1С, то вылезает очень неприятная проблема. В сборщике внешняя компонента видна. Но в логах пишет [info] В приложение устанавливаются внешние компоненты: [info] внешняя компонента: org_innovait_AtolSmartLiteUtils [WARN] отсутствует для данной ОС. В файле 1cema каталог Android есть и в нем компонента. Но в APK она так и не попадает и соответственно не работает. Может есть мысли почему этот грешный сборщик мобильных приложение от 1С не видит что эта компонента под arm? А то очень обидно. Такая классная компонента и такой облом :-(.
Есть предположение, 1 - что не правильный манифест или название файлов. 2 - Попадал на то, что чувствительно к регистру. Надо попробовать переписать без регистра. Пока этим заняться не могу.
Неужели никто не собирал APK? Я просто думаю, может я где туплю? Спасибо за ответ.
Тут у меня для вас печальные новости. Даже если кто-то и собирал, то поделиться почему-то забыл. Лично я еще не собирал. Если у вас получится, то прошу отписаться что надо поправить. Я добавлю это в WIKI.
Разобрался. Чтобы собиралось нормально надо в манифест занести строчки
<component os="Android" path="AtolSmartLiteUtils_ARM.so" codeType="c++" type="native" arch="i386" />
<component os="Android" path="org_innovait_atolsmartliteutils-debug.apk" codeType="java" type="native" arch="i386" />
Это само собой не будет работать на платформе x86, но она и на фиг не нужна. Зато под ARM собрется в 1С без вопросов.
Ну или как вариант в файле выгрузки 1С для мобильного приложения ручками создать каталог i386 в каталоге Android. и туда скопировать каталог ARM. Костыль конечно, но зато приложение собирается и работает.
Компонента компилится и в x86 и в ARM64. А в какой манифест(название файла)?
В файле внешней компоненты для 1С есть файлик MANIFEST.XML и в нем прописана только для платформы ARM. Надо добавить пару строк указанных выше для платформы x86. Чисто глюк 1С, что есть нет для обеих платформ, то мобильное приложение собирается без компоненты.