我准备开始进行一些Android开发,并且需要选择一种语言。我知道Python,但必须学习Java。我想从在Android上使用Python的那些人中了解局限性。另外,相对于Java有什么好处吗?
我最近出于类似原因对此进行了调查。我的结论是,我无法使用Python开发本机外观的应用程序,这正是我当时想要的。特别:
Python无法从Java UI类接收回调,因此您不能使用任何本机Java UI元素(例如ListView等)。仅对话框等是容易使用的。如果您具有完全自定义的UI(例如游戏),则可以尝试Android的PyGame,或者可以看看Kivy,它也使用PyGame。
打包Python应用程序非常困难,尤其是因为默认情况下Android上不包含Python解释器。Kivy和PyGame团队在此方面取得了一些间歇性进展。
由于上述问题,Python基本上从未用于制作可在应用商店中发布的完整应用程序,因此有关如何使用SL4A(Android脚本层)处理许多杂物的文献非常薄。
因此,如果您想制作一个使用本机UI元素的应用程序,并且您可以实际在Play商店中分发它们,或者两者都分发,那么遗憾的是Python不是一个选择。