Kivy - 在 Docker 桌面上使用 buildozer 构建 APK 失败

Kivy - build APK with buildozer on Docker Desktop failed

我尝试在 Docker 容器(Docker 桌面 Windows 10)中使用 Buildozer 运行ning 生成 APK,但它随时都会失败。图片来自 https://hub.docker.com/r/kivy/buildozer。当从 docker run --volume ${pwd}:/home/user/hostcwd buildozer init 开始时,buildozer.spec 被正确创建,但是当我 运行 docker run --volume ${pwd}:/home/user/hostcwd buildozer debug 时,所有的乐趣都以关于丢失 API 的错误消息结束:

可惜我也是新手Docker...如果我没理解错的话,那么SDK和NDK应该在这个过程中已经下载成功了,但是Android API 不见了,不知道怎么安装。

正如您已经猜到的那样,确实下载了 SDK 和 NDK,但您必须明确接受它们的许可。如果设置 android.accept_sdk_license = True.

,则可以在 buildozer.spec 文件中执行此操作

我在工作目录中生成了 buildozer.spec 文件

docker run --volume "$(pwd)":/home/user/hostcwd kivy/buildozer init

然后我在工作目录中生成的buildozer.spec中设置了android.accept_sdk_license = True

...
# (bool) If True, then automatically accept SDK license
# agreements. This is intended for automation only. If set to False,
# the default, you will be shown the license when first running
# buildozer.
android.accept_sdk_license = True

# (str) Android entry point, default is ok for Kivy-based app
#android.entrypoint = org.renpy.android.PythonActivity
...