android - 使用 Kivy 将 python 转换为 android
问题描述
我有一个 Python3 桌面应用程序,我想将其转换为 android apk。我看到 Kivy 模块存在并且可能能够实现这一点,但我担心它能够让 apk 像 python 代码一样工作。我使用许多不同的模块,例如 PIL、opencv、pyserial、threading、watchdog、file_read_backwards 等)。
这是可能的还是我要求太多了?如果是,我该如何更改/处理apk将是哪个android版本?
解决方案
- 线程在标准库中,所以你有它
- file_read_backwards 是纯 python 并且似乎不需要任何东西(根据 setup.py)虽然 requirements_dev.txt 列出了更多的东西,所以我不确定
- PIL 有一个配方(https://github.com/kivy/python-for-android/blob/master/pythonforandroid/recipes/pil/init .py),现在还有一个枕头配方,这可能更好使用(https://github.com/kivy/python-for-android/blob/master/pythonforandroid/recipes/Pillow/init .py ),这样看起来不错
- pyserial 是纯 python,我想我记得人们在 android 上通过 USB 串行成功,虽然我自己没有尝试过,它可能需要一个能够成为 USB 主机而不仅仅是客户端的设备,但我不知道很多关于那个。
- opencv 有一个配方,它可能是一个更敏感的配方,因为它已经很多年没有被触及了(除了一些外观修复),我想我已经看到人们对此有问题,但我会说这是值得的一枪。
我想说,这当然值得一试,在转换任何代码之前,尝试使用 kivy for android 构建一个 hello world 应用程序,然后重做构建,但将您的依赖项逐个添加到需求中,看看是否可以解决它或在没有解决时寻求帮助,如果一切顺利,然后考虑移植您的代码,这是成功肯定更多取决于您的部分,而不是 kivy/python-for-android 可以做什么。
推荐阅读
- postgresql - 如何计算重叠区域 - postgis,postgres?
- c++ - 如何在 Arduino 延迟期间在 void loop() 中使用 serial.available()?
- javascript - 自定义绑定的敲除滑动图像问题
- r - 如何根据名称列表对数据框进行排序?
- c# - 通用选择颜色更改 WinForms 控件
- python - django-modeltranslation 导致 django 无法访问数据库
- c - 使用 pthread_create 调用“int argc, char** argv -> int”类型的 C 函数
- javascript - 创建 3 选项动态依赖下拉列表
- python - BeautifulSoup 问题:如何通过匹配准确的标签内容得到准确的链接?
- javascript - WaveSurfer.js - 同时播放和控制多个音轨