Download Programación Android con Python

Document related concepts
no text concepts found
Transcript
Alexis Álvarez Colín
Programación Android con Python
Nos llega este interesante proyecto de la mano de Kivy, un framework basado en OpenGL escrito en python que
nos permite hacer aplicaciones desktop, IOS, Windows y tambien Android.
Con Kivy, que es a la vez un framework y un toolkit como PythonQT o como el GTK+ toolkit de Gnome, podemos
crear botones, animaciones, elementos visuales desde Python.
Mathieu Virbel, leader programmer de Kivy nos publica hace pocos días este script en Python que permite
compilar desde python con el toolchain de Android y de esta forma obtener un APK para Android.
Introducción: Instalación del Framework Kivy
En nuestro caso no es necesario instalar a kivy, el script de python-for-android nos descaraga directemente el
framework de Kivy.
Solo instalamos Kivy para tener los ejemplo Demo a Compilar, no es necesario tenerlo instalado se puede
saltar al siguiente paso.
En Mac os, es simple uno se puede bajar el archivo Kivy-1.5.0-osx.dmg para snow Leopard y lo instala como de
costumbre, esto instalará todas las dependencias de Python OpenGL
http://kivy.googlecode.com/files/Kivy-1.5.0-osx.dmg
[update] En Ubuntu, para instalarlo desde apt-get:
sudo apt-add-repository ppa:kivy-team/kivy
sudo apt-get install python-kivy
Para Compilar kivy desde easy_install:
Si estas en ubuntu o con Debian, se puede compilar el framework Kivy desde easy_install.
Al instalar desde easy_install, para instalarse, se requiere muchas dependencias como cythonque pueden ser
descargadas desde pip o easy_install.
sudo apt-get install python-setuptools python-pygame pythonopengl python-gst0.10 python-enchant gstreamer0.10-plugins-good
cython python-dev build-essential mesa-common-dev libgl1-mesadev libgles2-mesa-dev
sudo pip install Cython==0.17.1
sudo easy_install pyrex
sudo easy_install kivy
Aqui inicia el paso para Python-For-Android …
Instalación del NDK y del SDK de Android
Descargar los ejemplos demos:
kivydemo-for-android.zip
Alexis Álvarez Colín
Descargar y descomprimir el SDK y el NDK de Android en una carpeta opt.
http://developer.android.com/sdk/ndk/index.html
Luego hay que bien configurar los Paths del SDK y del NDK. Con un Export de ANDROIDSDK y ANDROIDNDK.
vi ~/.bashrc
export ANDROIDSDK=”/opt/android-sdk-linux_86″
export ANDROIDNDK=”/opt/android-ndk-r8″
export ANDROIDNDKVER=r8
export ANDROIDAPI=14
Debes estar seguro que tenes el PATH del SDK y del NDK en tu PATH, podes comprobar esto con un simple
echo $PATH, sino agregalos a tu archivo .bashrc
cuando ya terminaste con las variables env, para tomar las variables en tu shell, ejecutas:
source ~/.bashrc
Si no tenés instalado en Ubuntu el git core build essentials Tambien hay que hacerlo:
sudo apt-get install build-essential patch git-core ccache
y vas a necesitar también cython, que es a la vez un lenguaje y una extension para usar librerias en C desde
Python:
sudo pip install Cython==0.17.1
Instalación del script python-for-android
Con un simple Clone del proyecto desde github:
git clone git://github.com/kivy/python-for-android.git
Ahora creamos una distribución de la toolchain de Android incluyendo al modulo de Kivy.
./distribute.sh -m "kivy"
Y ya tenemos nuestra toolchain lista para compilar un script en Python que va a generar un APK. Buscamos la
carpeta dist y buscamos un ejemplo a compilar.
Podemos mirar el codigo del ejemplo del touchtracer que está en los ejemplos demo de Kivy.
$ vi kivydemo-for-android/touchtracer/main.py
Alexis Álvarez Colín
Nos posicionamos en la carpeta de dónde se encuentra el build, resultado de nuestra compilación.
cd dist/default
Luego lanzamos la ejecución del build:
./build.py --package org.test.touchtracer --name touchtracer -version 1.0 --dir ~/code/kivydemo-for-android/touchtracer debug
y tenemos un BUILD SUCCESSFUL
Se encuentra el resultado en un apk compilado que esta en la carpeta bin/. Lo instalamos con un simple adb
install.
Aqui esta el resultado del TouchTracer en el Market de Android.
[update] el APK se ejecutará normalmente en dispositivos android que soportan GPU, OpenGPL 2.0 ES, y
android Froyo minimo. Para ver si su dispositivo puede correr Kivy Python, prueban correr antes el KivyTest
Si queremos empezar con nuestro propio proyecto:
?
1
if __name__ in ('__main__', '__android__'):
2
YourApp().run()
Y si queremos empezar ahora con un simple tutorial, les dejo este:”como hacer un juego Pong con kivy”
Referencia:
http://www.androidda.com/2012/01/introduccion-a-la-programacion-en-python-para-android/