对于有一些使用java创建Android应用程序的经验的python开发人员。 我想创建一个小应用程序,访问我的大学门户网站并检索一些数据,以便在Android上轻松访问它。
1)开发Android应用程序哪个更容易,更快?
2) Kivy是否有限制访问Android的某些部分(例如未与其api完全集成)?
3)最后,使用kivy开发的Android应用程序运行速度与使用java开发的应用程序一样快?
答案 0 :(得分:16)
这是一个相当主观的问题。
1)开发Android应用程序哪个更容易,更快?
我认为kivy有一个强有力的论据,但这没有客观的答案。
2)Kivy是否有限制访问Android的某些部分(例如没有与其api完全集成)?
kivy项目包括pyjnius,一个通过python访问java类的工具,原则上我认为这应该是任意的(编辑:反射,而不是任意,但可能不是立即重要的限制)访问java apis
在实践中,预构建的python包装器正在进行中,虽然正在快速改进。 android python库已经可以轻松访问很多东西(包括但不限于意图,振动,加速计等)。即使在没有python包装器的地方,也可以很容易地完成必要的工作。
编辑:最近在Kivy的plyer项目上做了大量工作,旨在为平台特定工具提供透明的api,以便您可以调用一次并在不同系统上获得相同的行为,而无需了解详细信息。它包括对android api部分的有用支持。
3)最后,使用kivy开发的Android应用程序运行速度与使用java开发的应用程序一样快?
最终答案可能是否定的,但除非你做的事情很有限,否则差别很小。你建议的任务不会受到这种限制。
答案 1 :(得分:12)
要完成inclement的答案,pyjnius确实允许访问很多android api。但它并不完美,调用现有的类并不总是足够的,并且android程序员经常需要创建将由android调用以管理事件的代码,有两种方法可以做到这两点,两者都由android api使用。
所以事先看看api值得一看,看看你需要访问的android api部分是否需要。