Kivy用于安卓应用

55 投票
4 回答
18961 浏览
提问于 2025-04-17 10:50

我刚开始接触安卓开发。之前我在用Python编写应用方面有很多经验,所以我在寻找一个不错的“安卓 + Python”的组合,结果我发现了一个好东西:Kivy

我需要制作一些能够从互联网下载和上传内容的应用,可能还需要和安卓里的地图组件连接,做一些其他的功能,让我的安卓应用看起来更好。

不过,我真的不想在一些可能没用的东西上浪费时间。那么,有人有用Kivy开发安卓应用的经验吗?它真的有用、简单、可行吗?还是你们有什么更好的选择?

4 个回答

3

我对这个了解得不多。不过我知道,

SL4A(Android脚本层)也支持用Python来写Android应用。也许在你决定用什么之前,可以先了解一下这个。

13

我觉得 KivyMaps 和你想做的事情挺像的。

如果你避免使用特定于非安卓平台的代码,那么你的应用应该能在安卓上顺利运行。

我建议你也看看 Python for Android,这是Kivy的一个姐妹项目,旨在帮助你创建自己的Python版本,包括你想要的模块,并生成一个包含Python、库和你应用的apk文件。特别要关注它为安卓提供的本地API封装。这个项目还比较新,所以目前只支持少数本地API,但它可能会给你一些关于如何为安卓位置服务API创建封装的思路,如果你需要的话。

至于谷歌地图的外部库,我同意 tshirtman 的看法。我不太确定它该怎么用,但正如上面提到的KivyMaps链接所示,还有其他可行的方法。

24

我使用并参与了kivy一段时间,主要是为了开发一个打算上市的大型应用。虽然它还没有原生开发那么完善(我不确定是否能使用Android的地图API,但有其他替代方案),但它的表现非常不错,性能也很好。用kv语言快速原型开发真的很酷。

而且作为额外的好处,你的应用可以在Windows、Linux、Mac和iOS上运行……(我们还得尝试一下上苹果商店,但从技术上讲是可行的)。补充一下,到目前为止,至少有一个kivy应用已经被苹果市场接受,如果你感兴趣,可以找一下“deflectouch”。

与SL4A不同,你可以得到一个真正的apk文件来分发,kivy还提供了一个非常好看且流畅的图形用户界面API,适合多点触控的应用。

撰写回答