001-Inleiding tot Android App Ontwikkeling |
Welkom by jou gids tot Android app ontwikkeling! This post series aims to teach the basics of Android app development in Android Studio using Java programming language. Ek neem aan dat jy nie enige Java of Android programming ervaring aan die begin van hierdie post-reeks het.
Ek gaan elke bietjie van inligting ontwikkeling in eenvoudige terme verduidelik. Jy "sal van voor af begin en in staat is om jou idees te omskep in jou eie programme sal wees ná die voltooiing van hierdie post-reeks.
'N Enkele post-reeks kan natuurlik nie jy maak die beste kenner op 'n platform of programmeertaal egter jy "sal 'n stewige agtergrond en praktiese ervaring in Android app ontwikkeling met hierdie post-reeks.
Android-programme is ontwikkel met behulp van Eclipse geïntegreerde ontwikkelingsplan omgewing (HIER) met Android Development Tools (ADT) plugin in die verlede. Maar, Google bekendgestel Android Studio as die amptelike IDE vir Android app ontwikkeling in 2014 en hierdie IDE is die standaard. Die nuutste stabiele weergawe is Android Studio 2.2, wat gebruik sal word in hierdie post-reeks.
Laat "s oorsig die grondbeginsels van die Android-bedryfstelsel en die verwante begrippe voor die aanvang van ons program reis.
Die Android-bedryfstelsel Android is 'n oop-bron mobiele bedryfstelsel. Dit is 'n variant van Linux dus die verskaffing van uitgebreide sekuriteit, modulariteit en produktiwiteit op die vlak selfoon. Android is ontwikkel en in stand gehou word deur die organisasie met die naam "Open Headset Alliance" (OHA). OHA is gestig in 2007 met Google om sy voorste lid. OHA sluit 'n baie prominente hardeware en sagteware maatskappye.
oorspronklik, Android is geskep deur 'n maatskappy genaamd Android Inc. Google hierdie maatskappy het in 2005. Daarna, Google het dit oopbron en Android opgedoen het 'n groot momentum. Android het die aandeel van sowat mark 85% in 2016 soos getoon in Figuur 1.1 (databron: http://www.idc.com/). Met inagneming van hierdie markaandeel, dit is natuurlik beloon te belê in Android app ontwikkeling
Android het sewe groot vrystellings elk met 'n paar geringe wysigings. Ten einde hierdie weergawes makliker volg, ontwikkelaars noem hulle met koekie name. Die gewilde weergawes van Android is Kitkat (Android 4.4), Lollipop (Android 5.1) en Marshmallows (Android 6.0) (https://www.statista.com/statistics/271774/share-of-android-platformson-mobile-devices-with-android-os/). nougat (Android 7.0) is ook besig om in gewildheid. Android raak meer in staat is as die weergawe styg. Maar, Ons moet versigtig wees oor die weergawe kies tydens app ontwikkeling, want nie elke toestel gebruik die jongste weergawe. As ons die ontwikkeling van 'n app vir die Lollipop, dit mag nie uitgevoer word op 'n toestel wat Froyo het geïnstalleer. Gelukkig, Android Studio stel ons in staat te stel die verenigbaarheid kies.
Android benut nie net in slimfone maar ook in tablette, netbooks, digitale televisie bokse, draagbare spel toestelle en selfs in 'n enkele raad rekenaars soos UDOO. Daarom moet ons eers die teiken toestel te kies(s) en weergawe(s) voor die ontwikkeling van 'n app.
Hoe Android Apps Werk?
Daar is verskillende maniere die programme uit te voer op verskeie platforms. Die laagste vlak sagteware geskryf kan word in masjienkode wat direk loop op die mikroverwerker.
Aangesien dit moeilik is om komplekse aansoeke in masjienkode ontwikkel, bedryfstelsels gebruik word. Bedryfstelsels bied 'n kommunikasie en beheer laag tussen die toepassingsprogrammatuur en die hardeware.
As ons wil 'n boorling aansoek te ontwikkel vir die werk op 'n spesifieke hardeware / bedryfstelsel, ons het om dit te doen met behulp van 'n samesteller en linkerkant.
Samesteller en linkerkant neem die bron-kode en skep die uitvoerbare lêer wat eintlik op die bedryfstelsel loop. Byvoorbeeld, as ons wil 'n aansoek in C ontwikkel ++ programmeringstaal, Ons moet die samestelling / koppel proses benut.
Die grootste voordeel van inheemse aansoeke is hul spoed. Maar, Die nadeel is die onverenigbaarheid oor verskillende platforms.
Byvoorbeeld, Ons kan 'n boorling Windows-program op Ubuntu en omgekeerd nie hardloop. Virtuele masjien konsep is ontwikkel om hierdie beperking te oorkom.
'N virtuele masjien is 'n sagteware wat loop op die bedryfstelsel en bied 'n onttrekking aan die Developer.The aansoek sagteware loop op die top van die virtuele masjien.
daarom, solank 'n rekenaar het die virtuele masjien hardloop, die toepassing sagteware kan hardloop op die rekenaar onafhanklik van die hardeware en die bedryfstelsel.
'N Goeie voorbeeld is die Java Virtual Machine (JVM). JVM loop op byna alle bedryfstelsels en platforms. daarom, wanneer ons die ontwikkeling van Java sagteware, dit sal loop op die JVM onafhanklik van die bedryfstelsel / platform.
Die voor die hand liggende voordeel van die ontwikkeling van programme wat uitgevoer word op virtuele masjiene kan dan gestel word as: "Ontwikkel vir eens en loop op alle platforms". Maar, programme wat uitgevoer word op virtuele masjiene is stadiger as inheemse aansoeke. Die algemene ontwikkelingsproses van virtuele masjien aansoeke is opgesom.
Soortgelyk aan Java programme, Android aansoeke ook uitgevoer word op 'n JVM. Daar is twee spesiale virtuele masjiene gebruik in Android: Dalvik virtuele masjien (DVM) en Android runtime (ART).
Dit is gespesialiseerde JVMs wat kan hardloop op 'n lae stelsel bronne. Die APK lêers (executables van Android-programme) eintlik loop op hierdie virtuele masjiene.
DVM het die verstek Runtime Environment was (~ Virtuele masjien) totdat die Lollipop release (Android 5.0). Kuns is ingestel deur Android 4.0 en het die verstek VM was as van Android 5.0. DVM en ART basies doen dieselfde werk: hardloop Android-programme onafhanklik van die platform.
Die grootste voordeel van ART oor DVM is die benutting van 'n konsep wat voorlê genoem van Tyd (AOT) samestelling in plaas van Just in Time (ministers bedryf) benadering. in AOT, programme is saamgestel tydens die installasie vandaar hulle laai
vinniger met 'n laer CPU gebruik. Aan die ander kant, JIT samestelling bied laer stoorplek verbruik met 'n relatief lang laai tyd.