У меня проблема с совместимостью библиотеки / приложения, и я не могу найти решение.
У меня есть библиотека, скомпилированная с V28 +, как показано:
/* Library graddle file targets to v28 with AndroidX support */
compileSdkVersion 28
buildToolsVersion '28.0.3'
Он скомпилирован и полностью функционален. По сути, эта библиотека содержит фрагмент, который экспортируется в приложение.
Но, как совместимая с Androidx библиотека, фрагмент простирается от
import androidx.fragment.app.Fragment;
Пока все хорошо, здесь работает нормально, если я использую эту библиотеку в другом скомпилированном приложении AnrdoidX.
Проблема в том, что у меня есть приложение, предназначенное для SDK 27, без поддержки AndroidX:
/* Library gradle file targets to v27 with no AndroidX support */
compileSdkVersion 27
buildToolsVersion '28.0.3'
Когда я его скомпилировал, я получил кучу ошибок (файл класса для androidx .... не найден), как в этом примере (здесь я использую элемент Fragment библиотеки в приложении FragmentManager):
public class RadioFragment extends RadioPlayerFragment {
^
class file for androidx.fragment.app.Fragment not found
...
Если я отредактирую свой файл gradle.properties и добавлю следующие строки:
android.useAndroidX=true
android.enableJetifier=true
Тогда я получил, например:
Execution failed for task ':app:processDebugResources'.
Не удалось связать ресурс Android
Выходные данные: /Users/anibal/Development/Proyectos/project/Git/project/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values-v28/values-v28.xml:7: ошибка: ресурс android: attr / dialogCornerRadius не найден.
/Users/anibal/Development/Proyectos/MovistarRadio/Git/project/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values-v28/values-v28.xml:11: ошибка: ресурс android: attr / dialogCornerRadius не найденный.
/Users/anibal/Development/Proyectos/project/Git/project/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:1172: ошибка: ресурс android: attr / fontVariationSettings не найден.
/Users/anibal/Development/Proyectos/project/Git/project/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:1173: ошибка: ресурс android: attr / ttcIndex не найден.
ошибка: не удалось связать ссылки.
Итак, мой вопрос:
Есть ли способ использовать скомпилированную библиотеку AndroidX (V28) в более низком целевом приложении без поддержки AndroidX?
Сменить старое приложение на AndroidX на данный момент не вариант.