我读了几篇SO上的问答,发现有两种选择,即QPython和Kivy来进行Android编程,然而,显然两者采用不同的方法。我正在尝试验证我的理解,并查看是否遗漏了一些重要信息。
- QPython允许使用Kivy库开发图形应用程序
- QPython和Kivy都使用SL4A,但是QPython通过添加一些NFC和类似功能扩展了标准SL4A(或其Python绑定)
- QPython用于创建可以使用各种模块、库的Python脚本,但需要在目标设备上安装QPython才能执行。没有将脚本打包成apk的方法。
- Kivy允许开发人员编写应用程序,使用他们的基于云的构建系统编译为apk(另外,可以在Ubuntu Linux上设置本地构建系统)[然而,我注意到大多数使用Kivy的示例apk都相当大,约为40MB。我有遗漏什么吗?]
- QPython apk有两个版本,即Python-2.7和Python-3.x。对于Kivy,我不确定它是哪个版本。
- 最新的QPython-3.x从市场上获取,在Android Kitkat(4.4.2)系统上,QPython示例脚本(HelloWorld.py)似乎表现不如预期。我得到输入文本的对话框,但是我希望弹出一个Toast,但是没有任何反应。
- 我觉得QPython和Kivy都是由单个开发人员开发的(或者只有一个人目前活跃),并且尚没有大型社区。[这是我最担心的]我注意到SO上有3-4个带有“qpython”标签的问题,而有超过一千个带有“kivy”标签的问题!
- 同时,我觉得Kivy的开发目前比QPython更加活跃(也许相当活跃),但是对于QPython,我没有清晰的了解。
- 与QPython相比,Kivy似乎正在试图扩展可能使用它编写的应用程序的性质。有像plyer和pyjnius这样的API可以帮助扩展可能性。与QPython相比,可能相当显著。
- QPython和Kivy似乎都在积极开发中。两组工具都报告了程序/脚本崩溃/失败。
总的来说,由于以上原因,人们的意见似乎更倾向于Kivy。我的理解正确吗?我有漏掉任何重要的点吗?这不是一个修辞问题,我只寻求事实答案。