Kivy是一套专门用于跨平台快速应用开发的开源框架,使用Python和Cython编写,基于OpenGL ES 2,其核心开发成员主要包括:Mathieu Virbel、Thomas Hansen、Gabriel Pettier等。Kivy对于多点触控有着非常良好的支持,不仅能让开发者快速完成简洁的交互原型设计,还支持代码重用和部署,无论是为Windows、OS X、Linux还是Android和iOS,开发者都可以使用相同的代码库。
主要特性:
Kivy从最初的1.0到1.8.0版本,发展已超过三年,并且,其开发团队仍然在不断地更新和优化中。使用Kivy不仅易于使用,更通过模板技术降低了后续代码的维护难度,许多开发者评价其为颇让人惊艳的一款NUI框架。
在2048风靡之时,Mathieu Virbel用Kivy小试牛刀地开发了一款Kivy版的2048,绝对可以充当开发者学习Kivy的Hello World:
#when the setup is done and it start working, it is easy to login PythonActivity = autoclass('org.renpy.android.PythonActivity') GameHelper = autoclass('com.google.example.games.basegameutils.GameHelper') gh_instance = GameHelper(PythonActivity.mActivity, GameHelper.CLIENT_ALL) gh_instance_listener = GameHelperListener() gh_instance.setup(gh_instance_listener) gh_instance.onStart(PythonActivity.mActivity) android.activity.unbind(on_activity_result=_on_activity_result) android.activity.bind(on_activity_result=_on_activity_result)
#that's how you can unlock achievement #uid is the Google UID for the achievement you want if gh_instance.isSignedIn(): Games.Achievements.unlock(gh_instance.getApiClient(), uid)
#put the user score on the leaderboard #uid is the Google UID for the leaderboard you've created. #You can have multiple leaderboard. if gh_instance.isSignedIn(): Games.Leaderboards.submitScore(gh_instance.getApiClient(), uid, score)现在,您还可以进入Kivy的mobilehub主页进行资源分享和讨论。开发者可直接登陆Github下载Kivy,想要了解更多关于Kivy框架的信息及其开发指南,可查看Kivy官网。