@oleg0099

Как использовать новую версию Gradle в Buildozer для создания aab файлов?

Вопрос к тем людям, которые работают на Python - Kivy.

Как Вы знаете с августа 2021г Play Market перестал принимать приложения в формате apk, предлагая загружать все новые приложения в формате aad (Android App Bundle). И вот вопрос: а как же теперь из Python - Kivy компилировать эти aab файлы?

Ведь для создания apk мы использовали buildozer, а он на данный момент (последняя версия buildozer 1.2.0) этого делать не умеет. Казалось бы ответ прост: использовать buildozer для создания apk, а затем с помощью Android Studio переделывать их в aab.

И вот тут-то и начинаются все трудности. Аналогичный вопрос неоднократно поднимается на англоязычных форумах, но ответа до сих пор нет. Возможно уже кто-то из Вас данную проблему решил, поделитесь, пожалуйста своим опытом.

При создании apk файла через buildozer я использую android.api = 31, android.minapi = 26, android.ndk = 19c и android.ndk_api = 26. Приложение успешно компилируется, запускается и без проблем работает. Однако при компилировании я получаю такое предупреждение:

[DEBUG]: > Configure project :
[DEBUG]: WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
[DEBUG]: It will be removed at the end of 2018. For more information see: d.android.com/r/tools/update-dependency-configurat...

и ещё одно

[DEBUG]: Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
[DEBUG]: Use '--warning-mode all' to show the individual deprecation warnings.
[DEBUG]: See https://docs.gradle.org/6.4.1/userguide/command_li...

610ea7b43b289150822557.png

610ea7c2c4800185122468.png

Как видно из принтскринов, buildozer старается использовать при сборке Gradle 6.4.1, однако по каким-то причинам ему это не удаётся и он собирает apk с использованием устаревшей версии Gradle. В моём случае это Gradle 3.1.4.

610ea7fc0dc7d370586126.png

Именно из-за этого, я так понимаю, Android Studio и не может перекомпилировать данный apk файл в формат aab и просит использовать в своей сборке Gradle не ниже версии 3.2.0.

610ea82252361736235107.png

Вопрос к тем людям, которые данную проблему уже решили: как заставить buildozer использовать в своей сборке новую версию Gradle?

Перечитав официальную информацию на https://developer.android.com/studio/build/native-..., я так и не смог разобраться, как это всё применить для связки Python - Kivy - Buildozer.

Однако на одном из форумов кто-то давал совет, что мол измените android.minapi с 26 на 28 и всё заработает. Попробовал, к сожалению, не заработало.

610ea85867c9f355625330.png

Считаю вопрос актуальныи, т.к. сейчас многие из тех, кто раньше закидывал небольшие приложения в формате apk на Play Market, столкнутся с этой проблемой.
  • Вопрос задан
  • 117 просмотров
Пригласить эксперта
Ответы на вопрос 1
@DanielYakyma
Мені вдалося оновити версію gradle до 7.1.1 та android gradle plugin (AGP) до 7.0.0 в Buildozer (in Google Colab), але я всеодно отримую цю помилку. Коли я побудував apk з проекту Android Studio, а потім спробував зробити з нього .AAB, я побачив цю саму помилку. Я гадаю, що це сам Android Studio винен в цьому.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы