Cómo escribir aplicaciones de Android en Python
Prólogo: Escribir una aplicación de Android en Python definitivamente no es la mejor opción, pero definitivamente es una opción muy perezosa, y realmente no quiero aprender Java y, en términos de programación, ya lo sé. Python y Golang (Nota: el nivel de Python y Golang es promedio), por lo que la posibilidad de escribir una aplicación de Android en Python es realmente buena.
Ya que quieres escribir una aplicación, debes tener una idea, ¿verdad?
En realidad, quiero crear dos aplicaciones. ¿Una la escribo y la reproduzco yo mismo y la otra trata sobre operación y mantenimiento?
Sobre la operación y mantenimiento de la APP, el diseño debería ser así, ¿verdad?
Tal vez sea así:
Entonces el diseño debería ser así:
Si crees que es factible, puedes dejar un mensaje y decir Lo que crees que debería incluir esta aplicación Comandos de uso común para operación y mantenimiento ^_^, pienso en top, free -m, df -h, uptime, iftop, iotop. Si tienes buenas ideas, simplemente tíralas. También debería escribir esto como un proyecto y ponerlo en github para que todos puedan usarlo juntos. El código abierto es el camino a seguir, jaja.
Bien, vayamos al grano.
Usamos kivy para desarrollar la aplicación de Android. Kivy es un marco de código abierto dedicado al desarrollo rápido de aplicaciones multiplataforma. Está escrito en Python y Cython y tiene muy buen soporte para multitáctil. permite el desarrollo Las personas pueden completar rápidamente prototipos interactivos simples y también admite la reutilización e implementación de código. ¡Definitivamente es una NUI increíble! Es un marco NUI absolutamente increíble.
Dado que es multiplataforma, puedes generar aplicaciones tanto para Android como para IOS escribiendo el código una vez, ¿qué genial, verdad?
En este artículo, le guiaremos en la redacción de un Hola mundo y veremos la versión Python del código 2048.
¿Instalación de Kivy?
Nota medioambiental: ¿Estoy usando Python 2.7.10?
Esta es una instalación únicamente de Windows.
Actualizar pip, setuptools
python -m pip install --upgrade pip wheel setuptools12
Luego instale las dependencias requeridas
python - m pip install docutils pygmentspypiwin32 kivy.deps.sdl2 kivy.deps.glew \
kivy.deps.gstreamer ---extra-index-url?
Vale la pena señalar que el Android anterior requiere acceso a Google, así que traiga su propia escalera y kivy.deps.gstreamer ---extra-index-url. deps.gstreamer es un paquete grande (95 MB), por lo que se puede instalar localmente por separado.
Luego instale kivy
python -m pip install kivy12
En este punto, la instalación se ha completado. Vale la pena señalar que los sistemas de 64 bits lo hacen. no habilitar el soporte de virtualización. Habrá un error al importar kivy, por lo que si está utilizando un sistema de 64 bits, configure el BIOS para habilitar la compatibilidad con la virtualización.
Nota: Este es solo el entorno de ejecución de Kivy, por lo que puedo depurar directamente en una máquina con Windows. Más adelante discutiremos cómo compilar el código en un archivo APK.
Si kivy usa lenguaje Python, deberías poder importarlo.
Digamos "hola" al mundo, ¿vale?
Crea un nuevo archivo .py
desde kivy.app.import App
desde kivy.uix.button importButton
clase TestApp (Aplicación):
def build(self):
botón de retorno(text='Hola, kivy')
TestApp(). run()123456789
Ejecutar:
Luego aparecerá un cuadro, aproximadamente como sigue, haga clic en "hola, kivy" Haga clic en "hola, kivy" y cambiará de color p >
Haga clic en la ventana y presione "F1", aparecerán algunas propiedades de la ventana
Luego volvamos al código.
##Importar aplicación y luego dejar que la clase TestApp herede
de kivy.app importar aplicación
##Importar un botón, el envío y el mantenimiento tienen esto botón, al hacer clic en él se reaccionará
desde kivy.uix.button importButton
##Defina la clase, el nombre debe ser xxxApp
clase TestApp(App):
##construye un botón
def build(self):
##Devuelve un botón con el texto "Hola".text ='Hola, kivy'
Botón Volver (text='Hola, kivy')
##Ejecutar, el método de ejecución existe porque hereda de la aplicación
TestApp ().run ()123456789101112131415
¿Lo anterior es nuestro Hola?
Por supuesto, no tiene sentido ejecutarlo en Windows. Cómo ejecutarlo en un teléfono Android. lo que queremos.
Este es el entorno de compilación que necesitamos.
La descripción oficial del entorno de compilación es la siguiente:
Necesitas:
Computadora Linux o máquina virtual
Java p>
Python 2.7 (no 2.6)
Jinja2 (módulo de Python).
Jinja2 (módulo de Python)
Apache ant
SDK12345678 de Android
Aunque hay una imagen oficial de la máquina virtual que parece ser buena , todavía hay mucho por descubrir, así que proporcionaré una imagen relativamente más completa aquí.
Por supuesto, también puedes descargar la imagen oficial, porque la primera compilación requiere viajar al extranjero para descargar muchas cosas, así que trae tu propia escalera.
¿Máquina virtual?
Una máquina virtual preinstalada con el SDK y NDK de Android y todos los demás requisitos previos para una fácil generación de apk: ?
Kivy Buildozer VM?
O elija Torrent
En la imagen proporcionada por el autor, hay un dev_and en el escritorio, simplemente coloque el código escrito arriba en esa carpeta (por supuesto, también se puede poner a otros directorios, que se analiza más adelante).
cd Desktop/dev_and/12
La inicialización generará el archivo buildozer.spec en el directorio actual, que se utiliza para configurar la información del apk generado.
buildozer init12 p>
Modificar el archivo buildozer.spec
vi buildozer.spec12
Modificar al menos los siguientes tres elementos
# (str) Título de la aplicación
p>
título = helloworld
# (str) Nombre del paquete
paquete .name = helloapp
# (str) Dominio del paquete (android/ Requerido para el empaquetado de ios)
paquete.dominio = youer.com123456789
Luego el comentario
# (str) Aplicación control de versiones (método 1)
p>#version.regex = __version__ = ['"](. *)['"]
#version.filename = (source.dir )s/main.py
Cambie la siguiente línea a sin comentarios
versión = 1.2.0123456
Finalmente, generaremos el archivo apk requerido p>
buildozer -v android debug12
El comando Buildozer creará un contenedor en la carpeta actual, que contiene el archivo apk que queremos
helloapp-1.2.0-debug .apk
Debería verse así después de la instalación
Dicho esto, es posible que no haya suficiente espacio durante el proceso de compilación, así que expándalo tú mismo según la máquina virtual (vmware o caja virtual).
Por último, echemos un vistazo al código fuente del juego 2048, desarrollado en una versión sencilla de Python.
Echemos un vistazo a los resultados primero
Intenté jugarlo por un tiempo y fue bastante fluido. ¿Estás interesado en descargarlo y jugarlo?
El código de este juego no es largo, pero aún ocupa mucho espacio. Permítanme presentarles brevemente el proceso:
Consta principalmente de tres partes, una de ellas son los materiales. , imágenes, audio y otros archivos, y el otro es el código Python, y el tercero es el archivo kv. El archivo kv es un poco como el css en html.
¿El nombre de archivo del código Python suele llamarse main.py?
Entonces debe haber una clase llamada XXXApp y heredar App.
Por ejemplo, si el nombre de la clase es GameApp, entonces el archivo kv en este directorio debe ser Game, como se muestra en la figura anterior. De lo contrario, algunas configuraciones en el archivo kv no tendrán efecto.
Por ejemplo, establezca una etiqueta
Etiqueta:
id: hora
texto: 'xxxx'
font_size: 6012345
¿La identificación es hora, el contenido del texto es 'xxxx' y la fuente es 60?
Está bien, llegué al punto, pero nada parece hacer clic~~~
Para crear una aplicación desde cero, creo que debería abrir otra publicación sobre este tema.