Я создаю приложение, которое будет частью образа системы с AOSP , и пытаюсь включить библиотеки support-v4 и т. Д. Как AAR sдля приложения / в папке приложения libs / .В противном случае это работает нормально, и само приложение, и весь образ системы строится нормально, но затем возникают сбои во время выполнения при попытке открыть приложение.Кажется, что все они связаны с тем, что во время выполнения не обнаруживаются определенные классы support-v4 и т. Д., Например, ViewCompatMarshmallow и т. Д.
Теперь я проверил, и эти классы фактически включены в AARфайл, но, например, так:
ViewCompat $ MarshmallowViewCompatImpl.class
Принимая во внимание, что если я проверяю исходный код, например, support-v4, они включаются как
ViewCompatMarshmallow.java
Так что не следует ли тогда включать его в AAR как
ViewCompatMarshmallow.class
?
Я подозреваю, что это может быть какая-то проблема Android.mk , поскольку это то, что мне нужно использовать с моим приложением.Gradle, к сожалению, не подходит.
Я объявил, например, библиотеку AAR support-v4 по мере необходимости:
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 находится в папке Android SDK m2repository , так что должно быть "официальным" и правильным, верно?
Есть идеи?
Спасибо!