基维
我想把这个作为
@ JohnMudd
已经回答了(
但请容忍我,因为英语不是我的母语
)
从那以后已经很多年了,kivy已经发展到v1.9-dev,在我看来,kivy最大的卖点是它的跨平台兼容性。您可以在本地环境(windows/*nix等)下进行编码和测试,也可以构建、调试和打包应用程序,以便在android/ios/mac/windows设备上运行。
基维自己的
KV
语言,您可以轻松地编写和构建GUI界面(它就像Java XML,而不是TeXVIEW等),KV有它自己的。
ui.widgets
对于类似的翻译),这在我看来是很容易接受的。
目前
Buildozer
和
python-for-android
是构建/打包应用程序的最推荐工具。我已经尝试过这两种方法,可以肯定地说,它们让用python构建android应用变得轻而易举。在控制台/终端/命令提示符下感觉舒适的用户使用它们应该没有问题,而且他们的指南也有很好的文档记录。
此外,iOS是Kivy的另一大卖点,只要您可以使用相同的代码库,只需稍作更改即可在iOS设备上测试运行,通过
kivy-ios
尽管Xcode是在设备上运行之前构建所必需的(但Xcode中的IOS模拟器目前不适用于x86体系结构构建)。在xcode中也有一些依赖性问题必须手动编译和处理才能成功构建,但是这些问题不太难解决,而且
Kivy Google Group
也很有帮助。
尽管如此,拥有良好python知识的用户应该可以在几周(如果不是几天)内掌握基础知识来构建一些简单的应用程序。
另外值得一提的是,您可以将python模块与构建捆绑在一起,这样用户就可以真正利用python为我们带来的许多现有库,比如
Requests
和;
PIL
通过等
Kivy's extension support
.
有时您的应用程序需要超出
Kivy能提供的范围。在这种情况下,有必要
求助于外部软件库。鉴于
python生态系统,已经有很多软件
可以直接导入和使用的库。
最后但并非最不重要的一点是,如果你打算将kivy用于更严肃/商业的项目,你可能会发现现有的模块并不令人满意。不过,有一些可行的解决方案,包括
pyjnius
对于Android,以及
pyobjus
. 用户现在可以通过这些模块访问Java/Objtovi-C类来控制一些本地API。
我在kivy的经验是,它最适合经验丰富的python程序员和一些需要快速开发或简单代码库维护的严肃程序员。它在多个平台上运行良好,尽管不是真正的
本地的
感觉。
我真的希望一些python应用程序程序员发现这些信息很有用,并开始关注kivy。如果社区有很大的兴趣,它只能变得更好(有更多的支持和库/模块的移植)。
p.s.我和kivy没有任何关系,我只是一个程序员,真正喜欢把python编码的乐趣带给移动/跨平台开发的想法。