我正准备开始一点Android开发,需要选择一种语言。我知道Python,但必须学习Java。我想向那些在Android上使用Python的人了解其局限性。另外,Java有什么好处吗?
答案 0 :(得分:25)
安德鲁提到的大多数要点,我只是想提一下,python可以用于在GooglePlay甚至iOS上发布的完整的应用程序。我不能代表其他框架,但这里有一些使用Kivy发布的应用程序的例子。
在包装方面,我们试图让它尽可能简单,我们也提供
在GUI上,是的,ui是自定义的,默认情况下(尝试匹配Android的Holo主题)。然而,它可以定制为类似于其他外观和感觉,虽然我没有亲自尝试过。
哦,只要有人在Android上讨论基于python的应用程序,我发现在stackoverflow PyMob上提到了这个项目,他们的apps页面提到了一些有趣的应用程序。
答案 1 :(得分:16)
我最近因类似原因对此进行了调查。我的结论是我无法使用Python开发一个本机外观的应用程序,这正是我当时想要的。具体做法是:
Python无法从Java UI类接收回调,因此您无法使用任何本机Java UI元素(如ListView等)。只有对话框等易于使用。如果你有一个完全自定义的用户界面,比如游戏,你可以尝试PyGame for Android,或者你可以看看Kivy,它也使用PyGame。
Python应用程序的打包非常困难,尤其是因为默认情况下Android上不包含Python解释器。 Kivy和PyGame团队在这方面取得了一些间歇性进展。
由于上述问题,Python基本上从未用于在应用程序商店中发布完整的应用程序,因此有关如何处理SL4A(Android脚本编写层)的许多各种问题的文献非常多薄。
因此,如果您想创建一个使用本机UI元素的应用程序,您可以在Play商店中实际分发,或者两者兼而有之,那么遗憾的是,Python不是一个选项。
答案 2 :(得分:4)
我开发了市场上的Android应用程序,用Python编码。缺点: