Professional Documents
Culture Documents
Cilj kursa
Organizovan sa 4 asa dnevno x 4 dana Upoznavanje kroz primere sa glavnim konceptima aplikacija za Android Postavljanje dobre osnove za dalji samostalan razvoj
Agenda
Arhitektura sistema SDK i razvojno okruenje Hello World! Komponente aplikacije
Arhitektura
Elementi aplikacije
Activity grafiki element koji najee odgovara jednom ekranu Service usluni procesi koji rade u pozadini ContentProvider elementi koji omoguuju deljenje podataka u sistemu BroadcastReceiver element koji prihvata sistemske broadcast poruke (battery low, itd.)
ivotni vek
Intents
Aplikacije mogu same da osmisle i alju svoje poruke (Intent) Intent inicira aktiviranje Aktivnosti (Activity)
Intents
Sistem sam uparuje aktivnost (Activity) na osnovu zadate poruke (Intent) Elementi tipa Activity sami deklariu koje to poruke oni mogu da obrade (informacije za to se postavljaju u AndroidManifest.xml) Jedna Aktivnost moe da pozove drugu Aktivnost
Intents (primer)
Servisi
Rade u pozadini (putanje muzike, skidanje podataka sa interneta, i sl.) Postoji mogunost povezivanja Vae aplikacije i servisa koji radi u pozadini preko udaljene sprege (IPC InterProcess Communication) definisane u datotekama AIDL (Android Interface Definition Language)
10
ContentProviders
Omoguuju deljenje podataka izmeu aplikacija (npr. adresar, galerija slika, itd) Obezbeuju uniformnu spregu za pristup podacima, kao i za brisanje odnosno auriranje podataka
11
BroadcastReceivers
Komponente koje reaguju na sistemske broadcast poruke Broadcast poruke se prosleuju kao objekti klase Intent Obino nemaju svoj GUI, ve mogu da kreiraju status bar notification
12
uvanje podataka
Postoji vie opcija:
13
APK
Androidova arhiva za jednu aplikaciju Verzija ZIP-a Sve to je potrebno za aplikaciju se tu nalazi
14
Android SDK
Emulator adb
android-sdk\samples\
15
Emulator
Uz SDK stie i emulator Mogu se birati razliiti modeli (generiki, ili emulatori pravih hardverskih ureaja) i razliita okruenja (verzije OS-a, verzije APIja)
16
adb
Android Debug Bridge Klijent-server sistem, gde je klijent na host raunaru (gde se odvija razvoj), a server na Android raunaru Omoguuje:
itd.
17
Ciklus razvoja
Kreiranje Aktivnosti
Realizacija korisnikog interfejsa Prijava Aktivnosti u AndroidManifest.xml fajlu Instalacija na raunar Startovanje/debagiranje
18
Struktura projekta
19
Struktura projekta
20
Kreiranje aktivnosti
Aktivnost naseuje klasu Activity Redefiniu se metode vezane za ivotni ciklus: onCreate(), onStart(), itd.
21
Realizacija UI
Dva naina:
Plugin u Eclipse-u run-time generie klasu R, koja sadri id-ove svih resursa
Realizacija UI
23
Realizacija UI
24
Klasa R
/* AUTO-GENERATED FILE. DO NOT MODIFY. * * This class was automatically generated by the * aapt tool from the resource data it found. It * should not be modified by hand. */ package com.rtrk; public final class R { public static final class attr { } public static final class drawable { public static final int icon=0x7f020000; } public static final class layout { public static final int main=0x7f030000; } public static final class string { public static final int app_name=0x7f040001; public static final int hello=0x7f040000; } }
25
Resursi
multimedija (slike, animacije, itd.) folder drawable ostali fajlovi folder raw
android.resource://com.rtrk/raw/famous
xml fajlovi koji opisuju prostorni raspored komponenti na ekranu Aktivnosti folder layout stringovi folder values, fajl strings.xml
i18n localisation
26
Stringovi
27
Instalacija
Pitanja?
29