Transcription

III – Razvoj Android aplikacijaSAD R ŽAJ3.1 Razvoj Android aplikacija3.2 Razvojno okruženje Android aplikacija3.3 Instalacija JDK3.4 Instalacija Eclipse3.5 Instalacija Android SDK3.6 Dodatna podešavanja3.7 Kreiranje Android aplikacije

3.1 – Razvoj Android aplikacija Android aplikacije se mogu pisati u Java ili C programskom jeziku. Android SDK alati kompajliraju kod, zajedno sa ostalim podacima iresursima aplikacije u Android package, tj. fajl sa .apk sufiksom. Kod koji se nalazi u okviru .apk fajla predstavlja Android aplikaciju. Kada se aplikacija jednom instalira na uređaj, ona postaje potpunonezavisna celina u okviru sistema Android OS je multi-user Linux sistem gde se svaka aplikacija tretirakao jedinstveni korisnik Sistem dodeljuje aplikaciji jedinstveni Linux user ID. Sistem podešava dozvole za sve fajlove u okviru aplikacije, tako dasamo aplikacija sa određenim user ID može da im pristupi Svaki proces poseduje sopstvenu virtualnu mašinu, tako da jednaaplikacija može da se izvršava nezavisno od drugih Svaka aplikacija se izvršava u okviru svog Linux procesa Aplikacija može zahtevati pristup podacima na uređaju kao što su:skladište podataka, korisnički kontakti, SMS poruke, Bluetooth, itd.

3.1 – Elementi Android aplikacije Osnovni elementi svake Android aplikacije su njene komponente One određuju ponašanje i karakteristike aplikacije i omogućuju daaplikacija može da komunicira sa sistemom.1. Aktivnost - predstavlja jedan ekran sa korisničkim interfejsom. Iakosu one u okviru jedne aplikacije komponovane i koordinirane dapredstavljaju logičku celinu, svaka od njih je nezavisna. Zato različiteaplikacije mogu da startuju aktivnosti iz drugih aplikacija. Svakaaktivnost se implementira kao podklasa klase Activity.2. Servisi (Services) - izvršavaju se u pozadini kako bi se omogućilarealizacija dugotrajnih operacija, kao i izvršavanje udaljenih procesa.Servis ne pruža korisnički interfejs. Aktivnost može da pokrene servis3. Provajderi sadržaja (Content providers) - upravlja deljenim setompodataka aplikacije. Podaci se čuvaju u fajl sistemu, bazi, na Webu ilibilo kojoj perzistentnoj lokaciji kojoj aplikacija može da pristupi.Prekoprovajdera sadržaja aplikacija može da vrši upit nad podacima.4. Broadcast receivers – daje sistemske objave i notifikacije. Većinapotiče iz sistema (da je baterija slaba, notifikacija lampice i sl.

3.1 – Karakteristike Android aplikacije Jedinstvena karakteristika Android OS je u tome što svaka aplikacijamože startovati komponente iz neke druge aplikacije. Komponente aplikacije (osim Content providers) se aktiviraju prekoasinhrone poruke – namere (intent). Kako se jedna Android aplikacija sastoji iz raznih funkcionalnostipotrebno je više datoteka koje programer treba da napravi Svaka Android aplikacija osim koda sadrži i odgovarajuće resurse, kaošto su slike, audio fajlovi, stilovi, itd. Sve komponente jedne aplikacije se definišu u posebnom fajlu kojimora da postoji u korenom folderu projekta: AndroidManifest.xml. Ovde se nalaze generalni podaci o aplikaciji, koji su neophodnimobilnom uređaju pre početka izvršavanja aplikacije. Kada pravimo projekat za aplikaciju fajl se automatski generiše Kako dodajemo nove komponente našoj aplikaciji, sve standardneinformacije će biti automatski upisane u ovaj fajl. Ukoliko ipak želimo da aplikaciji dozvolimo neke posebne privilegije(permissions), onda je potrebno da se one ručno dodaju u fajl.

3.1 – Funkcije AndroidManifest.xml1. Sadrži naziv Java paketa u okviru kog je napisan izvorni kod aplikacijei on predstavlja jedinstveni identifikator aplikacije2. Opisuje komponente aplikacije – aktivnosti, servise, primaoceporuka i provajdere sadržaja. Dakle, AndroidManifest.xml fajl sadržinazive klasa u kojima su opisane komponente aplikacije. Na primer,aplikacija se neće startovati ukoliko u manifest fajlu nije navedenanjena početna aktivnost, čak ni u slučaju da fajl sa Java izvornimkodom te aktivnosti postoji.3. Određuje koji procesi će biti domaćini komponentama aplikacije.4. Definiše koje privilegije (permissions) aplikacija mora da poseduje dabi mogla nesmetano da funkcioniše.5. Definiše koje privilegije moraju druge aplikacije da poseduju dabi mogle da koriste komponente aplikacije.6. Definiše minimalnu verziju Android API-a koji zahteva aplikacija.7. Definiše listu biblioteka koje aplikacija koristi

3.2 – Razvojno okruženje Android programiranje je bazirano na Java programskom jeziku. Android aplikacije se mogu razvijati na različitim operativnimsistemima, kao što su Microsoft Windows XP ili novije verzije, MacOS X 10.5.8 ili novije verzije s Intel čipom, te Linux uključujući GNUC biblioteku 2.7 ili novije. Sav softver potreban za programiranje i razvoj Android aplikacija jebesplatan i može se preuzeti sa Interneta. Softver potreban za programiranje i razvoj Android aplikacija je:1. Java JDK5 ili novija verzija2. Android SDK3. Java Runtime Environment (JRE) 64. Android Studio Programerima koji koriste Windows računare, razvoj Java baziranihaplikacija može biti jednostavniji i lakši ako koriste:1. Eclipse IDE for Java Developers2. Android Development Tools (ADT) Eclipse Plugin Programer može da bira razvojno okruženje prema slobodnom izboru.

3.3 – Postavljanje razvojnog okruženja Najjednostavnije razvijati Android aplikacije u Eclipse razv.okruženju,jer Google daje za njega najbolju podršku u vidu dodataka (plugins). Rad u ostalim okruženjima je komplikovaniji, jer nisu integrisana saAndroid SDK, te je neophodno pokretati odgovarajuće alate iz konzole Postupak instalacije se neznatno razlikuje za Linux i MacOS u odnosuna Windows operativne sisteme.1. Prvi korak pri postavljanju razvojnog okruženja jeste instalacija JavaDevelopment Kit paketa (JDK). Ukoliko je na računaru prethodnoveć instaliran Java Runtime Environment paket (JRE), neophodno jeinstalirati i JDK, pošto on sadrži kompajlere i alate za rad saizvornim kodom, koji nisu prisutni u JRE paketu. JDK je moguće besplatno preuzeti sa sajta kompanije e/downloads/index.html

3.3 – Instalacija JDK

3.3 – Instalacija JDK Klikom na taster Download JDK, otvoriće se stranica gde je mogućeizabrati platformu za koju se preuzima paket.

3.3 – Instalacija JDK Nakon izbora platforme, potrebno je kliknuti na checkbox I agree itaster Continue. Sada će se otvoritistrana na kojoj jeprikazan naziv fajlaza preuzimanje. Klikom na naziv fajla, započećese sa procesom preuzimanja. Po završetku preuzimanja istartovanju fajla, krenuće procesinstalacije JDK-a. Potrebno je pratiti instrukcije saekrana.

3.4 – Instalacija Eclipse2. Sledeći korak jeste instalacija Eclipse Integrated DevelopmentEnvironment-a (razvojno okruženje). Njega je moguće besplatno preuzeti sa adresehttp://www.eclipse.org/downloads/ Eclipse razvojno okruženje podržava Windows, Linux i MacOS Xoperativne sisteme, kao i čitav niz programskih jezika. Moguće je koristiti bilo koju verziju Eclipse-a koja podržava Javaprogramski jezik. Pošto na sajtu za preuzimanje Eclipse razvojnog okruženja postojiveliki broj različitih verzija, biramo najjednostavniju verziju kojapodržava Java programski jezik. To je Eclipse IDE for Java Developers

3.4 – Instalacija Eclipse

3.4 – Instalacija Eclipse Nakon izbora verzije Eclipse-a, treba izabrati i mirror sajt sa koga ćese preuzimanje izvšiti. Od izabranog načina preuzimanja jedino zavisibrzina samog download-a, te ovaj izbor nije od presudne važnosti. Eclipse IDE obično nema sopstveni program za instalaciju. On se jednostavno nalazi zapakovan u okviru jedne ZIP arhive. Nakon uspešnog preuzimanja, dovoljno je raspakovati tu arhivu uželjeni folder (npr. C:\, tako da će konačna putanja Eclipse IDE-a bitiC:\eclipse)

3.4 – Instalacija Eclipse Pošto Eclipse IDE nije instaliran na uobičajeni način, raspakivanjemnisu postavljene prečice izvršnog fajla na radnu površinu i u Start meni Potražite u Eclipse folderu (obično je to C:\eclipse) fajl eclipse.exe ina njega postavite prečicu koju čete smestiti na desktop ( pomoćuopcije Copy i opcije Paste shortcut.

Contents3.5 – Instalacija Android SDK3. Sledeći korak jeste instalacija Android Software Development Kit-a(SDK). Njega je moguće besplatno preuzeti sa sajtahttp://developer.android.com/sdk/index.html Na navedenom sajtu je potrebno izabrati verziju za željeni OS U slučaju Windows-a, preporučljivo je preuzeti exe datoteku, pošto jeto verzija SDK sa ugrađenim programom za instalaciju Kod drugih OS, dovoljno je otpakovati datoteku u željeni folder. Sada je moguće startovati instalaciju, gdeje potrebno pratiti instrukcije sa ekrana

3.5 – Instalacija Android SDK Po završetkuinstalacije, startovaćese SDK Manager. Ovde je mogućeizabrati verzijeAndroid API-a koje semogu preuzeti. Izbor verzije Android API-a veoma je važan, zato što od toga direktnozavisi da li će aplikacija raditi na određenom mobilnom uređaju. Na primer, ako se izabere verzija 3.0 API-a, aplikacija svakako nećeraditi na starijim Android telefonima. Nove verzije API-a imaju naravno više funcionalnosti, ali manjukompatibilnost sa starijim uređajima. Izborom opcije Accept All i klikom na Install započeće se preuzimanjei instalacija svih verzija API-a, prateće dokumentacije i primera. Verzija API-a za koju će se kreirati aplikacija bira se naknadno.

3.6 – Dodatna podešavanja Nakon završenogpreuzimanja potrebnihfajlova, instaliranekomponente je mogućevideti u odeljkuInstalled Packages. Naknadno je mogućeinstalirati novu verzijuAPI-a izborom opcijeAvailable Packages Ovde bi trebalo izabrati Google Inc. add-ons, zato što ovi paketiuključuju dodatne biblioteke za rad sa Google servisima. Nakon izbora, treba kliknuti na dugme Install Selected i zatimprihvatiti licencu, čime će se potrebne datoteke preuzeti. U okviru SDK Manager-a moguće je kreirati i podesiti virtuelneAndroid mobilne uređaje, koji se koriste prilikom testiranja aplikacije. Potrebno je izabrati opciju Virtual Devices.

3.6 – Dodatna podešavanja Ovde se prikazuje spisak podešenih virtuelnih Android uređaja. Klikom na taster New moguće je kreirati novi uređaj U novootvorenom prozoru moguće je podesiti parametre virtuelnoguređaja. U pitanju su sledeći parametri:

3.6 – Parametri virtuelnog uređaja1. Name – proizvoljan naziv virtuelnog uređaja.2. Target – verzija Android API-a koju koristi uređaj.3. SD Card – podešavanja virtuelne memorijske kartice. Ukoliko seizabere opcija Size, moguće je zadati veličinu nove virtuelnememorijske kartice. Ukoliko se izabere opcija File, moguće je učitatisadržaj image fajla kao virtuelnu memorijsku karticu.4. Snapshot – ukoliko se izabere opcija Enabled, omogućiće sepamćenje stanja virtuelnog uređaja i kasnije učitavanje tog stanjaprilikom ponovnog uključivanja virtuelnog uređaja. Opcija Snapshotje slična opciji Hibernate u Windows operativnom sistemu.5. Skin – predstavlja rezoluciju ekrana virtuelnog uređaja. Može seizabrati neka od predefinisanih standardnih rezolucija (Built-in) ili semože zadati proizvoljna vrednost rezolucije (Resolution).6. Hardware – prilikom kreiranja virtuelnog uređaja, može se izabrativirtuelni hardver koji uređaj sadrži (na primer GPS prijemnik,memorijska kartica, kamera i drugo).

3.6 – Dodatna podešavanja Primer: kreiraćemo novi virtuelniuređaj Froyo sa parametrima kao naslici. Nakon unosa vrednostiparametara, kliknućemo na tasterCreate AVD, čime će novi Androidvirtuelni uređaj biti sačuvan. Sada treba izaći iz SDK Manager-a ipokrenuti Eclipse razvojno okruženje. Prilikom prvog startovanja ovogokruženja, potrebno je izabrati lokacijuworkspace-a. Workspace u stvari predstavlja folder ukome će se nalaziti projekti rađeni uEclipse razvojnom okruženju. Workspace se obično nalazi u okviru ličnog foldera OS

3.6 – Dodatna podešavanja Ukoliko opcija Use this as thedefault and do not ask againnije izabrana, korisnik ćelokaciju workspace-a biratiprilikom svakog pokretanjaEclipse razvojnog okruženja. Nakon ovog podešavanja trebakliknuti na taster OK. Sada je neophodno instaliratidodatak koji omogućavaintegraciju Eclipse IDE-a iAndroid SDK-a. Potrebno je izabrati meni Help,a zatim opciju Install NewSoftware

3.6 – Dodatna podešavanja Otvoriće se novi prozor, u kome treba kliknuti na dugme Add

3.6 – Dodatna podešavanja U novootvorenom prozoru u polje Nametreba uneti Android, a u polje Locationtreba upisatihttps://dl-ssl.google.com/android/eclipse/ Zatim treba izabrati opciju OK. Posle nekoliko trenutaka, trebalo bida se pojavi prozor kao na slici Potrebno je selektovati DeveloperTools, čime će biti izabrane i svepodopcije, a zatim kliknuti na tasterNext.

3.6 – Dodatna podešavanja Zatim je potrebno potvrditi izbor ponovnim klikom na Next, prihvatitilicence i na kraju kliknuti na taster Finish.

3.6 – Dodatna podešavanja Ovim je započeo procesinstalacije dodataka za Eclipse. Ukoliko se pojavi prozor kojiobaveštava korisnika da sadržajkoji se preuzima nema digitalnipotpis, potrebno je kliknuti nataster OK, čime se omogućavainstalacija. Nakon završetka instalacije,potrebno je ponovo pokrenutiEclipse razvojno okruženje

3.6 – Dodatna podešavanja Sada je neophodno podesitidodatak za Android SDK. Treba izabrati opciju Window- Preferences, a zatimopciju Android. U polje SDK Location trebauneti putanju do instaliranogAndroid SDK. Podrazumevana vrednost jeC:\Program Files\Android\android-sdk-windowsOvime je završen proces podešavanja Android razvojnog okruženjai sada je moguće kreirati aplikacije za Android platformu!

3.7 – Kreiranje Android aplikacije Kreiranje nove Android aplikacije korišćenjem Eclipse razvojnogokruženja dosta je jednostavno. Nakon startovanja okruženja, potrebno je izabrati opciju New - Other- Android - Android Project, a zatim kliknuti na taster Next

3.7 – Parametri Android projekta Project Name – Proizvoljan naziv novog Eclipse projekta. Contents – Sadržaj projekta. Postoji tri različite opcije ovog parametra1. Create new project in workspace-kreiranje potpuno novog projekta.2. Create project from existing source – uvoz postojećeg koda unovokreirani projekat.3. Create project from existing sample – korišćenje gotovih primera uokviru novog projekta. Build Target – Izbor verzije Android API-a koja će se koristiti unovom projektu. Properties – Dodatni parametri novog Android projekta:1. Application Name – naziv aplikacije koji će biti vidljiv na uređaju.2. Package Name- ime Java paketa u okviru koga se pišu klase projekta3. Create Activity – ako je opcija izabrana, kreiraće se nova praznaaktivnost u okviru projekta( potrebno je uneti i naziv te aktivnosti).4. Min SDK Version– minimalna verzija Android API-a na kojoj ćeraditi aplikacija.

3.7 – Kreiranje Android aplikacije Nakon uspešno podešenih parametara,potrebno je kliknuti na taster Finish. Kreiranjem novog Android projekta,generišu se određeni fajlovi koji suorganizovani po folderima. Svaki Android projekat ima svoj XMLmanifest fajl (AndroidManifest.xml)koji opisuje prirodu aplikacije i svakenjene komponente. Na sledećoj slici(tabeli) prikazana jeorganizacija strukture Android projektapo folderima. U korenom folderu projekta, osim fajlaAndroidManifest.xml nalazi se i fajldefault.properties, koji sadrži opštapodešavanja projekta, kao što jeverzija Android API-a koju aplikacijakoristi.

3.7 – Kreiranje Android aplikacijeFolderOpisSadrži fajlove sa izvornim kodom. U ovom folderu se nalaze svesrc/kreirane aktivnosti (u okviru odgovarajućeg paketa).Ovde se nalaze kompajlovani fajlovi projekta, kao što su konačni apkbin/fajlovi (varijanta jar fajla za instalaciju na Android uređaju).Sadrži izvorni kod razvijen korišćenjem alata Android NDK (Nativejni/Development Kit). Ukoliko se ne koristi NDK, ovaj folder ne postoji.gen/ Sadrži generisane fajlove, čiji sadržaj ne treba ručno menjati.Ovde se nalaze dodatni materijali koji se koriste u projektu. Na primer,assetto mogu da budu podaci koje koristi aplikacija. Na početku je ovajs/folder prazan.res/libs/U ovom folderu se nalaze dodatni resursi koji se koriste u aplikaciji.Oni su organizovani po podfolderima. To mogu da budu slike,animacije, raspored elemenata korisničkog interfejsa i sl.Ovde se čuvaju dodatne biblioteke koje se koriste u projektu.

Hvala na pažnji !!!Pitanja? ? ?

3.1 -Razvoj Android aplikacija Android aplikacije se mogu pisati u Java ili C programskom jeziku. Android SDK alati kompajliraju kod, zajedno sa ostalim podacima i resursima aplikacije u Android package, tj. fajl sa .apk sufiksom. Kod koji se nalazi u okviru .apk fajla predstavlja Android aplikaciju. Kada se aplikacija jednom instalira na uređaj, ona postaje potpuno