[[oktatas:programozás:python:kivy|< Kivy]] ====== python-for-android ====== * **Szerző:** Sallai András * Copyright (c) 2020, Sallai András * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== A python-for-android ===== A python-for-android egy csomagolóeszköz, olyan python programok számára, amit Androidon szeretnénk futtatni. GitHub hely: * https://github.com/kivy/python-for-android Webhely: * https://python-for-android.readthedocs.io/ ===== Telepítés ===== pip3 install python-for-android Szükséges még: pip3 install Cython ===== Java downgrade ===== Töltsük le a 8-s Java verziót. * https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html Csomagoljuk ki: mv jdk-8u261-linux-x64.tar.gz /opt/ cd /opt tar -xzvf /opt/jdk-8u261-linux-x64.tar.gz Állítsuk be alapértelmezettnek: update-alternatives --install /usr/local/bin/java java /opt/jdk1.8.0_261/bin/java 1 update-alternatives --install /usr/local/bin/javac javac /opt/jdk1.8.0_161/bin/javac 1 update-alternatives --config java Ellenőrizzük: java -version ===== Ellenőrzés ===== p4a --version ===== Program követelmény ===== Az első állományneve kötelezően main.py: geany main.py ===== Gyorskezdés ===== p4a apk --requirements=kivy --private /home/janos/valahol/ \ --package=lan.nagyjanos.program01 \ --name="Program01" \ --version=0.1 \ --bootstrap=sdl2 ===== Kapcsolók ===== Java csomag neve: --package Az alkalmazás neve: --name="Program01" A program verziója: --version=0.1 Forgatás automatikusan: --orientation=portait --orientation=landscape --orientation=sensor Az alkalmás ikonja. (egy .png fájl): --icon --requirements=python3,kivy --bootstrap=webview --port=5000 ===== Újraépítés ===== p4a clean_all Ha a függőségek újratöltése nélkül szeretne újraépíteni: p4a clean_builds && p4a clean_dists ===== Receptek ===== Listázás: p4a recipes A receptek, speciális scriptek különféle programok összeállítására, telepítésére. Segíti a komponensek gondozását. Saját recept: class SajatRecept(Recipe): url = 'http://valahol.net/pelda-{version}.tar.gz' version = '1.0.1' md5sum = '3f4d394847635476588bc33432883f82' patches = ['some_fix.patch'] # Az útvonal relatív a receptkönyvtárhoz depends = ['kivy', 'sdl2'] # Függőség példa conflicts = ['generickndkbuild'] recept = SajatRecept() ===== Konfigurációs fájl ===== Egy .p4a kiterjesztésű fájl, az aktuális könyvtárban konfigurációs fájlként van értelmezve. A konfigurációs fájlban az opciókat sorolhatjuk fel: --android_api 27 --requirements kivy,openssl ===== Példa ===== # Valami Python kód --sdk-dir /home/janos/Android/Sdk --ndk-dir /home/janos/bin/android-ndk-r21d --android-api 27 --ndk-api 21 --ndk-version r21d --requirements kivy --private /home/janos/dev/gyak/python/kivy --package lan.nagyjanos.elso --name elso --version 0.1 --bootstrap sdl2 --dist-name elso Csomagkészítő parancs: p4a apk `cat kapcsolok.p4a` ===== Linkek ===== * https://python-for-android.readthedocs.io/en/latest/quickstart/#installing-android-sdk (2020)