Я пытаюсь создать инструмент для сборки Android App Bundle. На этапе использования ссылки aapt2 для соединения всех модулей я получил сообщение о том, что «невозможно включить статическую библиотеку, если статическая библиотека не создается». Контекст заключается в том, что он создает resource-apk.ap_ для одного из функциональных модулей App Bundle и связывается с resource-apk.ap_ базового модуля. Другими словами, входным аргументом для -o является resource-apk.ap_ для функционального модуля, а одним из входных аргументов для -I является resource-apk.ap_ для базового модуля.
Основываясь на сообщении об ошибке, я думаю, что это касается resource-apk.ap_ базового модуля как статической библиотеки и resource-apk.ap_ функционального модуля как нестатической библиотеки. Затем я попытался включить параметр --static-lib в качестве аргумента, я получил сообщение, что «может быть определен только один из --shared-lib, --static-lib или --proto_format». Поскольку я создаю App Bundle, мне нужно, чтобы выходные данные таблицы ресурсов были в формате прототипа.
Я попытался проверить, как Gradle справляется с этим в своем коде, но не нашел точного кода реализации aapt2link.
Не могли бы вы указать, как я могу найти примеры решения этой проблемы или какое было бы возможное решение?
Заранее спасибо!
Я проверил ввод; нет файлов .a или .o, только .xml, resources и resource.pb базового apk. Результат не является окончательным apk, поскольку нужно будет создать другие функциональные модули. @MarcosVasconcelos
Конечным результатом нативных библиотек является SHARED_LIBRARY (.so), если вы связываете .a или .o с финальным APK, он не может работать.