Buildozer:手动包含一个外部 API

Buildozer: manually include an external API

我想将 SDK 库包含到 PIP 或 Internet 上任何 public 位置中不存在的构建中。我读过这可以手动完成。我将 SDK 库放在我的 Kivy 项目的根目录中。开发控制台发现这个导入很好。问题出在部署上。

查看 buildozer.spec 文件时我发现了这个:

# (str) Custom source folders for requirements
# Sets custom source for any requirements with recipes
# requirements.source.kivy = ../../kivy

我的 SDK 位于项目根目录中名为 sdk 的文件夹中,因此我尝试了这个:

requirements.source.sdk = sdk

编译没有错误,但应用程序在尝试导入时崩溃。

如何手动将 SDK 库添加到我的 APK 中?

嗯!您已经找到了 将 SDK 文件夹放入您的项目文件夹的答案。

我写这个答案是为了以后帮助别人。 :)

无论何时在设备上部署应用程序,使用日志总是简单而有用的。

即使您想在应用程序中查看打印语句,您也会发现日志很有用。

所以,这就是你的做法。

您需要使用 adb 服务器。

  1. 将您的 android 与您的 laptop/pc 连接起来。

  2. 进入开发者选项并打开保持清醒和 USB 调试选项

  3. 在你的终端输入 sudo adb-kill server 然后 sudo adb-start server。

  4. 键入 adb devices(这应该会给出连接的设备列表)

List of devices attached

you_device_name device

  1. cd 到您构建的文件夹。
  2. 类型buildozer android debug deploy run logcat > logcat.txt 这会将日志(对于整个过程)保存在同一文件夹中的文件 logcat.txt 中。 仔细检查并找到您的错误。
  3. 让你的 phone 保持清醒。(不要锁定它)。

编码愉快:)