Inhoudsopgave
Laten we in principe weten hoe de Android-architectuur is om te begrijpen hoe we correct kunnen werken.De structuur is verdeeld in vier lagen die overeenkomen met Android en de aangepaste kernel die overeenkomen met Linux.
De Android-lagen zijn:
- Toepassingen: hier vinden we de applicaties die de gebruiker gebruikt, het is wat de gebruiker ziet op het scherm, de grafische interface, toetsenbord, widget, interactiemenu's.
- Applicatieraamwerk (Framework): Het is de API waar ontwikkelaars toegang toe hebben om bronnen te gebruiken om hun applicaties te laten werken, daar kunnen ze componenten en systeembibliotheken gebruiken of hergebruiken.
- Bibliotheken: Ze zijn een set C++- of C-bibliotheken die door sommige systeemcomponenten worden gebruikt en die beschikbaar zijn voor ontwikkelaars via het Framework, zoals Sqlite voor databases, multimediabibliotheken, enz.
- Android-runtime: Deze laag is degene die de code uitvoert van de in Java geprogrammeerde bibliotheken en ze worden uitgevoerd met de Dalvik virtuele machine, waarmee u kunt vertalen naar bytcode (compilatie van tussencode vóór binaire of machinecode) en toepassingen kunt uitvoeren die zijn geprogrammeerd in Java, een taal die wordt gebruikt voor programmeren in Android.
De virtuele machine vertaalt Java-bestanden naar Dex-indeling die worden uitgevoerd en vertaald in binaire code door de virtuele machine en kan dus werken op de Linux-kernel om de bronnen van hardware, software, processen en geheugen te beheren.
We beginnen met het eerste voorbeeld door een applicatie te installeren om in Android te programmeren, we kunnen Android Studio gebruiken of ook Netbeans met de Android-sdk. We zullen Android Studio gebruiken, de standaard gekozen door het Android-ontwikkelteam, de software is multiplatform, hier zullen we zien hoe we het onder Linux kunnen installeren.
We zullen het uitleggen twee methoden om Android Studio te installeren
Voordat we Android Studio installeren, moeten we installeren: Oracle JAVA 8 de JDK en JRE met behulp van een PPA-repository. Om Java 8 vanaf de terminal te installeren gebruiken we de volgende commando's:
sudo add-apt-repository ppa: webupd8team / java sudo apt-get update sudo apt-get install oracle-java8-installer
Aan het einde van de installatie controleren we de versie van java die is geïnstalleerd met het volgende commando:
java -versie
sudo apt-get install oracle-java8-set-default
Een andere optie is om vanaf de terminal de volgende opdrachten te gebruiken:
export JAVA_HOME = / usr / lib / jvm / java-8-oracle / 1.8.0_25 / export PATH = $ PATH: $ JAVA_HOME / bin
of we kunnen ook het bestand met systeemvariabelen bewerken
sudo nano .profile JAVA_HOME = [b] /usr/lib/jvm/java-8-oracle/1.8.0_25 / [/ b] PATH = $ PATH: $ HOME / bin: $ JAVA_HOME / bin export JAVA_HOME export PATH
We hebben het installatieprogramma gedownload van http://developer.and … ing / studio.html, de software bevindt zich in de bètafase maar kan zonder problemen worden gebruikt.
Pak het zip-bestand uit, in de map android-studio vinden we de bin-map en daarin het .studio.sh-bestand, dat het uitvoerbare bestand is. Om uit te voeren openen we de terminal en schrijven sh studio.sh, hiermee wordt Android studio gestart.
sudo apt-add-repository ppa: paolorotolo / android-studio sudo apt-get update sudo apt-get install android-studio
We beginnen met het maken van een eenvoudig project om de structuur en de code te begrijpen.
- We selecteren Lege activiteit om een project met niets te starten
- Dan zal het ons standaard vragen om de naam van de belangrijkste java-klasse van het MainActivity-project, in dit geval zullen we Hallo gebruiken, de andere opties zoals Lay-out (dat is de schermlay-out) nemen de naam activity_hola aan.
- Vervolgens klikken we op Voltooien en het programma begint een reeks bibliotheken en bronnen te installeren die nodig zijn voor ons project.
Wanneer we ons project starten, gaan we de emulator configureren hiervoor gaan we naar het menu Extra> Android> ADV Manager.
Hier zullen we een virtuele telefoon maken op basis van een bekende configuratie, we zullen de RAM-capaciteit hebben, als het een camera aan de voor- en achterkant heeft, welke interne opslag, welke processor en of het een extern geheugen heeft of niet, om onze applicatie te emuleren op het apparaat zo echt mogelijk.
We kunnen de structuur van een Android-project zien, we hebben de volgende mappen.
manifesteert: met de applicatie-instellingen.
Java: met de code die de applicatie functioneel maakt.
Rundvlees: de bronnenmap die op zijn beurt is onderverdeeld in de volgende mappen:
Tekenbaar: directory van afbeeldingen opgesteld per type scherm, elk in een subdirectory volgens bepaalde punten per inch die het apparaat ondersteunt. We zullen dit zien in een andere tutorial.
Menu: om menu's aan applicaties toe te voegen
Waarden: is om tekstwaarden en stijlen toe te voegen die lijken op css
Eerst gaan we activity_hola.xml om de componenten op te nemen, we kunnen het visueel maken vanuit code door de tabbladen Ontwerp en Tekst te wijzigen, dan gaan we naar het tabblad Tekst en kopiëren de volgende code.Lineair geeft het type scherm aan met component op lineaire locatie en vervolgens oriëntatie in portret en aanpasbaar aan het scherm en we voegen ook een knop toe. We zien dat de knop verwijst naar een waarde die in de tekenreeksmap wordt gevonden en de tekst heet textA en we zullen deze toewijzen aan een knopA.
Laten we nu naar het archief gaan string.xml en we definiëren tekstwaarden voor de applicatietitel en voor de knop.
Hallo Android Druk op Instellingen
Tot nu toe hebben we het ontwerp gezien in activity_hola.xml, we definiëren de te gebruiken componenten en in strings welke waarden we aan die componenten zullen toewijzen als ze vooraf gedefinieerd zijn. Nu zullen we de Java-code maken om de knop te laten werken en een bericht weer te geven wanneer erop wordt gedrukt.
pakket demo.hallo; importeer android.support.v7.app.ActionBarActivity; android.os.Bundel importeren; android.view.Menu importeren; android.view.MenuItem importeren; android.os.Bundel importeren; android.view.Gravity importeren; android.view.View importeren; importeer android.view.View.onclickListener; android.widget.Knop importeren; android.widget.LinearLayout importeren; android.widget.TextView importeren; android.widget.Toast importeren; openbare klasse Hallo breidt ActionBarActivity uit {@Override protected void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_hello); // knopcode we maken een nieuwe knop en wijzen deze toe aan de laatste buttonA Button btntest = (Button) findViewById (R.id.buttonA); // Vervolgens wijzen we aan de klik een functie toe die een bericht toont btntest.setonclickListener (new View.onclickListener () {public void onclick (View v) {MessageBox ("Hallo, dit is een berichtenvenster");}}); } public void MessageBox (String-bericht) {Toast.makeText (dit, bericht, Toast.LENGTH_SHORT) .show (); }}Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een positief punt te geven