Я создаю приложение, которое будет частью образа системы с помощью AOSP, и пытаюсь включить библиотеки support-v4 и т. Д. Как AAR. для приложения / в папке libs / приложения. В противном случае это работает нормально, и само приложение и весь образ системы строятся нормально, но при попытке открыть приложение возникают сбои во время выполнения. Все они, похоже, связаны с тем, что во время выполнения не удалось найти определенные классы поддержки v4 и т. Д., Такие как ViewCompatMarshmallow и т. Д.
Теперь я проверил, и эти классы фактически включены в файл AAR, но, например, нравится:
ViewCompat $ MarshmallowViewCompatImpl.class
Если я проверю исходный код, например, поддержка-v4, они включены как
ViewCompatMarshmallow.java
Разве это не должно быть включено в AAR как
ViewCompatMarshmallow.class
?
Я подозреваю, что это может быть какая-то проблема Android.mk, поскольку это то, что мне нужно использовать с моим приложением. К сожалению, Gradle не подходит.
Я заявил, например, библиотеку support-v4 AAR по мере необходимости:
LOCAL_STATIC_JAVA_AAR_LIBRARIES += support-v4-26.0.0
LOCAL_AAPT_FLAGS += --auto-add-overlay
LOCAL_AAPT_FLAGS += --generate-dependencies
LOCAL_AAPT_FLAGS += --extra-packages android.support.v4
LOCAL_AAPT_FLAGS += --extra-packages android.support.v4.app
LOCAL_AAPT_FLAGS += --extra-packages android.support.v4.view
(etc. all the required packagenames)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += support-v4-26.0.0:libs/support-v4-26.0.0.aar
Сам файл AAR взят из папки m2repository для Android SDK, так что он должен быть "официальным" и правильным, не так ли?
Любые идеи?
Спасибо!