Kivy的Android应用程序

我刚开始潜入Android世界。 我有很多使用Python编程的经验,所以我在寻找一个“Android + Python”的好组合,我想我已经find了它: Kivy

我需要制作能够从互联网上下载和上传内容的应用程序,也许有一些与Android中包含的地图组件的连接以及更多的东西来制作一个漂亮的Android应用程序。

但是我真的不想把时间浪费在可能无法解决的问题上。 那么,有没有人有使用Kivy开发Android应用程序的一些经验? 它真的有用,简单,可能吗? 还是有一个更好的select,你在想什么?

我一直在使用和贡献kivy一段时间,并将其用于为市场准备的大型应用程序。 虽然还不如本地开发完整(不确定是否可以使用地图Android API,但有其他select),但它工作得很好,性能良好。 用于快速原型的kv语言非常酷。

而作为奖励点,你的应用程序也可以在windows / linux / mac / ios上运行…(我们仍然需要尝试上苹果商店,但是从技术上说它是有效的)。 编辑:到目前为止,至less有一个kivy应用程序已经被苹果市场接受,如果你被捕,寻找“deflectouch”。

与SL4A不同的是,您可以获得一个真正的apk来分发,包含kivy以及一个非常漂亮的GUI GUI API,适用于多点触控应用程序。

我相信KivyMaps与你所要做的很相似。

如果您避免使用非Android平台特定的代码,那么您的应用程序应该在Android上运行而不会出现任何问题。

我也build议你看一下Python for Python ,它是Kivy的一个姊妹项目,旨在帮助你创build你自己的Python发行版,包括你想要的模块,并创build一个包含python,libs和你的应用程序的apk。 特别看看它的Android本地API包装。 该项目是新的,所以只有less数本地API被支持,但它可能会给你一个想法如何去创build一个Android位置服务API的包装,如果你需要的话。

至于谷歌地图外部库,我同意tshirtman 。 我不确定如何使用它,但正如上面的KiviMaps链接所强调的那样,还有其他可用的方法。

我很less有经验。 但我知道这一点

SL4A(针对Android的脚本层)也支持用Python编写Android应用程序。 在你决定使用什么之前,可能需要仔细研究一下。

Kivy是用于NUI开发的跨平台Python框架。 这是一些原型的Android应用程序的好处。 您可以使用Kivy启动器进行更快速的testing。 你可以使用python库如此快速的开发function。 您可以使用pyjnius来访问基于Java的function的Java类。

我build议你阅读Python的Kivy交互式应用程序为新手。

但是在更深层次上,你应该知道如何使用基本的小部件。 因为有一些令人困惑的概念。 对于canvas,在html5中是不同的概念。 基维语言的阶级规则和阶级对于新手来说有些混乱。

而对于Android应用程序,有一些难以使用像美味汤(着名的HTML和XMLparsing器库)基本支持的库。