Android -operativsystemet er uten tvil et av de mest brukte operativsystemene på mobile enheter i dag, og det er veldig effektivt også takket være tilknytningene til Linux -operativsystemet. I denne artikkelen skal vi diskutere hvordan du bygger et eksempel på Android -appen med Python.
Så hvorfor Python?
Vi kjenner språk som Java, Kotlin, rammer som Xamarin, React Native er veldig effektive i byggingen av apper, men oftere enn ikke systemadministratorer er mer fortrolige med å bruke skriptspråk som Python for oppgavene sine.
Med Kivy kan de få bygge minimale Android -apper for enkle oppgaver på Android -enhetene sine uten å måtte oppleve en endring i syntaks. Ja, vi vet alle at Python ikke er så rask når de brukes i apputvikling, men hvem bryr seg om det gjør den nødvendige jobben?
Med dette kan du raskt skrive et skraping av nettet for eksempel og kompilere til en Android -app og kjøre det på farten; det er ganske kult.
For å gjøre dette, skal vi bruke et Python -bibliotek kalt Kivy. Kivy brukes til å bygge mobilapper på tvers av plattformer, så det er ikke nødvendigvis for Android-enheter bare den støtter også bygging av iOS og Windows-programvare.
Installasjon av Kivy
Kivy er veldig enkelt å installere, men ting kan gå litt på høydyr hvis de installerte avhengighetene begynner å kollidere.
For å installere Kivy, kan vi bruke “PIP '-kommandoen for å installere Python-biblioteker, og vi kan også bruke" apt-get ". For at Kivy skal jobbe, har den mange avhengigheter, spesielt når du prøver å benytte deg av funksjoner som kameraet, jeg.e., OpenCV, eller et annet bibliotek som pute.
Imidlertid kan du få en enkel installasjon av Kivy.
Du kan installere Kivy for Python 2 med kommandoen nedenfor:
sudo apt-get install python-kivyDa kan Kivy for Python 3 installeres med kommandoen nedenfor:
sudo apt-get install python3-kivyHvis du har tenkt å installere med “PIP” -kommandoen, vil kommandoen nedenfor gjøre jobben:
Pip installer KivyDa kan en veldig populær avhengighet som er pygame installeres:
Pip installer pygameHvis du har tenkt å installere avhengighetene på dette tidspunktet, kan du gå foran og installere.
For Ubuntu 16.04:
sudo apt-get installere python-setuptools python-pygame python-opengl \Hvis du har tenkt å installere for andre versjoner av Ubuntu, kan du følge trinnene fra GitHub -dokumentasjonen.
Før vi fortsetter, kan du bekrefte om installasjonen av Kivy lykkes ved å importere modulen fra det interaktive skallet.
>>> Importer KivyAlt du trenger er et resultat i dette formatet; tallene forventes ikke å stemme overens.
Skriving av kode
Vi skal lage en enkel app som viser litt tekst på skjermen.
Lag en Python -fil, som vi vil navngi “Main.py ”. Denne filen vil ha følgende innhold:
Fra Kivy.Appimport -appPå overflaten ser det ut som om det ikke gjør noe, men vi vil gå gjennom det hver kodelinje gjør.
Fra Kivy.Appimport -appDette importerer appklassen fra Kivy -biblioteket som hjelper til.
Klasse HelloApp (app):Dette skaper en klasse HelloApp som arver fra appen som vi importerte tidligere; Vi gjør ikke mye her, fordi alt vi har gjort er å bruke "pass" nøkkelordet.
Så uten å skrive noen kode i, har den alle metodene i appklassen.
if __name__ == "__main__":Så sjekker vi for å se om Python -skriptet kjøres direkte eller importeres. Hvis den kjører direkte, utfører den RUN () -metoden til appklassen som ble arvet ellers, ingenting skjer.
Vi er nesten ferdig bare en fil til. Dette er en KV -fil, som vi vil bruke til markeringen vår.
KV -filen fungerer på KV -språket som har en viss likhet i syntaks med Python.
Bare opprett en ny fil uten navn, og legg inn følgende kodelinjer.
Merkelapp:Ser på hoved.PY -fil, vil vi merke at vi husket at vi opprettet en HelloApp () -klasse som arvet fra appen, og det var den eneste klassen.
I KV -filen kobles det automatisk til klassene som er opprettet i Python -filen. “Etikett” brukes til visning ved å bruke boksemodellen.
Spørsmålet er; Hvordan vet Python -filen vår at denne filen har markeringen? Det gjør dette gjennom navnet.
Siden HelloApp -klassen vår har to forskjellige ord som.kv.
Hvis klassen vår heter Linuxapp eller GameApp, vil KV -filen vår bli kalt Linux.KV og spill.henholdsvis KV.
Nå kan du kjøre Python -filen din:
Python Main.pyDu bør få en utdata som sier "Velkommen til Linux Hint".
Dette er bare toppen av isfjellet i hva du kan gjøre med Kivy -biblioteket; Du kan gå gjennom hele dokumentasjonen her, du kan også sjekke ut andre eksempler også.
Installere og bruke buildozer
Hvis du har fulgt denne artikkelen fra begynnelsen, vil du huske at installasjon av Kivy vi måtte vurdere mange avhengigheter. Å installere buildozer er derimot ikke så komplisert.
Alt vi ville gjort er å klone filene fra GitHub -depotet, vi installerer og bruker deretter.
git klon https: // github.com/kivy/buildozer.gitHer Python2.7 ville være versjonen av Python som er installert på systemet ditt; For eksempel, hvis du har Python 3.5 installert du bruker python3.5. Selv om noen hevder å ha problemer som bruker Buildozer med Python 3, kan du prøve det, og hvis det mislykkes, bytter du til Python 2.
Etter installasjon kjører du koden nedenfor. Akkurat som i det første tilfellet, Python2.7 kan endres til hvilken som helst versjon av Python, det ville være rimelig å bruke versjonen av Python som brukes til å installere buildozer.
Dette skaper en buildozer.SPEC -fil som inneholder konfigurasjonsinnstillingene for appen vår. Mens du kan fortsette uten å endre noen av konfigurasjonene, kan du sjekke ut filen og endre ting som applikasjonsnavn, pakketavn osv.
Filen skal være i dette formatet:
Etter dette kan du få kompilert Android -applikasjonen din, akkurat som de to første tilfellene du kan endre Python2.7 til versjonen av Python du har installert på maskinen din.
Python2.7 Buildozer Android Debug Deploy RunHvis du gjør dette for første gang, vil den nødvendige Android SDK, Android NDK og Android Ant -filene bli lastet ned, slik at du kan få en kopp kaffe, da det kan ta litt tid avhengig av hvor raskt internettforbindelsen din er.
Når Buildozer er ferdig med å samle applikasjonen, lagrer den den i BIN -katalogen.
Det er alt for denne opplæringen; Nå kan du lage enkle Android -applikasjoner og kjøre noen skript på Android -enheten din.