Kivy使用详解
Kivy简介
Kivy 是一套 Python 下的跨平台快速应用开发框架,对于多点触控有着良好的支持。不用深入学习 Java 或 Object C 即可开发流行智能手机平台应用。
Kivy 依据允许商业使用 LGPLv3 协议发布,支持 Linux, Windows, MacOSX, Android 和 iOS 平台,原生支持各个平台的输入设备协议,包括多点触控;其图形核心围绕 OpenGL ES2 构建,可以充分利用目标平台的 GPU 加速。
当前最新版本是1.72.
安装测试
环境:Ubuntu 12.04 64bit
1.下载源码包
下载好之后解压到 将压缩包解压到 /usr/local/lib 下面。
2.安装依赖
终端运行
sudo apt-get install python-setuptools python-pygame python-opengl \
python-gst0.10 python-enchant gstreamer0.10-plugins-good python-dev \
build-essential libgl1-mesa-dev libgles2-mesa-dev cython
3.安装&跑Demo
把解压后的文件夹名字改一下,直接
终端执行
cd /usr/local/lib/
sudo easy_install Kivy
在Kivy的examples中有很多的例子,例如:
3Drendering
python /3Drendering/main.py
Shader
最后来个HelloWorld: copy
- import kivy
- kivy.require('1.4.1')
- from kivy.app import App
- from kivy.uix.button import Button
- class HeiBoyApp(App):
- """docstring for MyApp"""
- def build(self):
- return Button(text='Hello World')
- if __name__ == '__main__':
- HeiBoyApp().run()
运行:python test.py
结果就是一个窗口里面有一个超级大的Button。
Android下跑kivy
可以看看Google play上kivy的demo:
Kivy Lanucher:https://play.google.com/store/apps/details?id=org.kivy.pygame
将Kivy demos for Android下载后放到/sdcard/kivy文件夹中就可以运行了,效果还算不错。
下面来手动编译一下 python on Android 。
这里环境采用的是官网提供的virtual box的ubuntu的镜像,因为这个东西的编译环境配置起来实在是太太麻烦了。
在ubuntu中创建一个ubuntu的虚拟机然后将镜像加载进去就可以了。
下面开始编译。
0.更新cython
编译的时候需要将cython升级到最新版。
sudo pip install --upgrade cython
1.下载源码
git clone git://github.com/kivy/python-on-android
2.设置包package
终端cd到python-on-android中运行
./distribute.sh -m "kivy"
运行成功的话在dist文件夹下面会出现一个default文件夹,里面就是一个工程模板。
3.编译
编译单个应用:
终端cd到default文件夹中,执行:
./build.py --dir ~/code/kivy/examples/demo/touchtracer \
--package org.demo.touchtracer \
--name "Kivy Touchtracer" --version 1.1.0 debug
编译一个launcher
lancher 会自动搜索sdcard/kivy目录下的工程,并给出工程列表,可以选择执行。
./build.py --launcher
--package org.demo.touchtracer \
--name "Kivy launcher" --version 1.1.0 debug
编译好之后在bin文件夹下就会出现一个apk,放到手机中就可以安装了。