You are on page 1of 16

Projektovanje Informacionih

sistema
Android aplikacije

Milo Jevti
Milan Lazi
profesor:Milorad Toi
Android je operativni sistem koji je u kratkom roku od nekoliko godina
uspeo da doe do samog vrha u svetu mobilnih telefona. Prvenstveno je i
razvijen za upotrebu na mobilnim telefonima meutim pokazavi se kao
izuzetno uspean prirodan korak je bio irenje trita pa tako danas postoje i
drugi ureaji koji rade na bazi Android-a. Tablet raunari, e-reader-i pa i
Android televizori su ureaji koji koriste ovaj operativni sistem i za njih se
ispostavilo da su veoma dobro prihvaeni od strane korisnika tako da je ovaj
potez bio pun pogodak.
Najvea prednost Andriod-a je u tome to je to open source softver, to
znai da je njegov source code javno dostupan tako da je mogue izvriti
izmene u ovom kodu i na taj nain promeniti funkcionisanje operatvinog
sistema. Korisnici i proizvoai mogu prilagoditi operativni sistem svojim
potrebama ili ispraviti neke greke koje nau i o tome mogu obavestiti
programere Android-a koji mogu odluiti da neke izmene ubace u neku od
sledeih verzija softvera. Android se pokazao kao veoma fleksibilan i
pogodan za programiranje aplikacija to mu je i omoguilo da postane
popularan na samom poetku i uz to to je open source je mogao da se brzo
razvija u skladu sa primedbama i unapreenjima od strane korisnika i
prilagoava tehnikim reenjima proizvoaa mobilnih telefona koji su
krenuli sa pametnim telefonima na bazi Android-a.
Aplikacije su proizvodi koji su najbitniji krajnjim korisnicima. Njima su
na raspolaganju sav hardver konkretnog Android ureaja i sve opcije koje
nudi sam operativni sistem. to je raznovrsnija paleta aplikacija korisnici e
biti zadovoljniji i Android ureaji e se bolje prodavati a s obzirom da je
okruenje dobro osmiljeno i pogodno za programiranje aplikacija, njihov broj
je zaista veliki i svakim danom se uveava. Jo jedna velika prednost je to se
veliki broj aplikacija moe preuzeti besplatno a i puno njih koje nisu
besplatne imaju malu cenu od 1-2 evra.
Mogunosti aplikacija zavise od operativnog sistema tj. od toga koje
opcije on podrava. Android veoma brzo napreduje i proiruje svoje
mogunosti tako da i aplikacije postaju sve sloenije i sposobnije za
raznovrsnije zadatke. Naravno ogranienja praktino i ne postoje jer svaki
proizvoa moe da koristi svoju verziju Android-a koja je izmenjena da bi se
realizovale neke nove funkcije ureaja koje taj proizvoa izbacuje na trite.
Aktuelna verzija Android-a prua podrku za sledee aktivnosti koje mogu da
se integriu u aplikacije:
-uvanje podataka
-povezivanje Bluetooth, WiFi, GSM/EDGE i drugi protokoli za
povezivanje u mreu
-slanje SMS i MMS poruka
-pristup Internetu
-otvaranje audio i video fajlova razliitih formata
-korienje hardvera: kamere, digitalnog kompasa, senzora ubrzanja,
senzora blizine, senzora pritiska, senzora poloaja,
GPS-a i drugih
-multi-touch ekran
-multi-tasking
-Flash podrka

Aplikacije mogu koristiti u kombinaciji vie ovih mogunosti koje im


prua Android operativni sistem kako bi iskoristili hardverske komponente
ureaja. Rad svake od aplikacija se zasniva na razmeni informacija sa
osnovnim softverskim alatima koji su integrisani u operativni sistem. Poto je
izvorni kod Android-a javno dostupan znatno je olakano razvijanje aplikacija
jer se mogu koristiti ve gotove procedure za rukovanje svim osnovnim
funkcijama Android ureaja.
Razvijanje Android aplikacija postaje sve popularnije i svakodnevno se
na Market-u pojavi veliki broj novih. Sve aplikacije su dostupne velikom broju
korisnika tako da one koje se pokau kao korisne veoma brzo dou do velikog
broja preuzimanja. Naravno, ovo omoguava i da se uz malu cenu
pojedinanog preuzimanja nakupi zarada ukoliko se razvije dobar proizvod i
puno ljudi bude spremno da za njega plati.
Android operativni sistem se bazira na jezgru Linux-a 2.6 koji je takoe
open source i moe se koristiti za razvijanje novih proizvoda. Na ovaj nain
Android koristi ve razvijene osnovne funkcije Linux-a meu kojima su:
-Sigurnosni model (security model) Linux sam obezbeuje sigurnost
izmeu aplikacije i
sistema.
-Raspolaganje memorijom (memory menagement) o raspodeli
memorije takoe ne
moraju da vode rauna programeri samih aplikacija to je jo jedno
olakanje za njih.
-Upravljanje procesima (process menagement) dodeljivanje resursa
procesima po
potrebi je reeno u samom jezgru Linux-a.
-Mreni stek (network stack) upravljanje mrenom komunikacijom.
-Model drajvera (driver model) proizvoai hardvera mogu da
naprave drajvere koji se
ugrauju u operativni sistem i omoguavaju funkcionisanje
hardverskih komponenti.

Android okvir (framework) je razvijen na bazi Linux-a sa mogunostima koje


su integrisane u njega iz razliitih open source projekata. Ovi open source
projekti iskorieni su za sledee svrhe:
-Android run time sastoji se od osnovnih Java biblioteka.
-Open GL API (application program interface) koji se koristi za 2D i 3D
kompjutersku
grafiku.
-WebKit jezgro web brauzera koje je iskorieno za prikazivanje web
sadraja i
uitavanje stranica.
-SQLite memorija Android ureaja se bazira na open source softveru
ralecionih baza
podataka.
-Media framework biblioteke za rad sa audio i video sadrajima.
-SSL (Secure Sockets Layer) biblioteke zaduene za Internet
sigurnost.

Aplikaciono okruenje (application framework) obezbeuje interfejs pomou


kojeg programeri aplikacija mogu koristiti razne biblioteke integrisane u
Android kao i mnoge funkcionalnosti koje su takoe ve razvijene i ugraene
u vidu nekih standardnih funkcija:
-Activity manager upravlja ivotnim ciklusom aktivnosti.
-Telephony manager obezbeuje pristup telefonskim uslugama i
vezanim
informacijama kao to su brojevi telefona.
-View system rad sa elementima koji ine korisniki interfejs.
-Location manager daje trenutnu geografsku lokaciju ureaja.
Android ureaji raspolau raznim hardverskim alatima koji postaju upotrebivi
posredstvom operativnog sistema. Aplikacije su jo jedan sloj izmeu
korisnika i OS-a koji olakavaju korisniku da iskoristi pun potencijal svog
Android ureaja. Poto je Android open source softver, javno su dostupne
programske sekvence za upravljanje svim resursima koje poseduju razni
Android ureaji pa je omogueno svim programerima aplikacija da iskoriste
ove gotove procedure i integriu ih u svoje aplikacije koje koriste neke od
raspoloivih hardverskih alata. Osnovni hardver kojim raspolae najvei broj
android telefona su:
-ekran osetljiv na dodir (touchscreen)
-GPS radio
-SD kartica
-senzor blizine
-senzor ubrzanja
-Bluetooth radio
-Kamera
Ekran osetljiv na dodir
Android ureaji imaju ekran osetljiv na dodir koji otvara puno
mogunosti za dizajniranje korisnikog interefejsa. Hardverski dugmii se
vie ne koriste ve se interfejs moe napraviti sa bilo kojim oblikom i
rasporedom kontrola na ekranu. Korisnici mogu da dodirom selektuju i
prevlae objekte na ekranu a poto Android podrava i multitouch mogue je
koristiti i kombinacije kada vie prstiju istovremeno dodiruje ekran kao to je
''tipanje'' ekrana za zumiranje.

Interfejs sa ekranom osetljivim na dodir je znatno napredniji i privlaniji


korisnicima i ini veoma vanu stavku u svetu pametnih telefona pa i Android
ureaja doprinosei znaajno njihovoj popularnosti.

GPS
Svi Android telefoni imaju ugraene GPS prijemnike pomou kojih je
uvek dostupna lokacija korisnika. Navigacija i korienje mapa postaje
dostupno u svakom trenutku i veoma je pogodno za putovanja a i mnoge
druge aplikacije koriste GPS kao to su social networking aplikacije. Jedna od
takvih aplikacija je Foursquare kojom moete svoju trenutnu lokaciju da
podelite sa prijateljima, moete videti gde se trenutno nalaze vai prijatelji i
koja javna mesta moete posetiti koja su u blizini.
Foursquar
e

Za poseena mesta se mogu ostaviti komentari, preporuke ostalim


prijateljima, fotografije a i mogue je povezati aplikaciju sa Facebook-om i
Twitter-om kako bi se automatski trenutna lokacija korisnika prosleivala i
tamo.

Najpoznatija aplikacija koja koristi GPS za


navigaciju je Google Maps koja daje pregled
eljene lokacije a pritom ima i dodatne opcije
koje mogu da budu izuzetno korisne. Mogu se
videti informacije o saobraajnim guvama na
putu, Google Maps se dosta koristi pri prevozu,
smernice za odabranu destinaciju u toku
vonje, mape sa 3D pregledom zgrada kao i
unutranje mape odreenih aerodroma, hotela

Google Maps
SD kartica
Portabilni memorijski medijum koji
se moe koristiti sa veinom Android
pametnih telefona a takoe SD standard
podravaju i mnogi drugi ureaji kao to
su kompjuteri, fotoaparati i telefoni
drugih operativnih sistema. Aplikacije
mogu pristupati fajlovima sa SD kartice
ili mogu da uvaju svoje podatke na njoj.
Upotreba portabilne
memorije dolazi do izraaja pri korienju bilo kojih aplikacija za rad sa audio
i video fajlovima, fotografijama, tekstualnim dokumentima...Aplikacije uz
pomo kojih moemo da generiemo fajlove takoe moraju da te fajlove
negde sauvaju i tada se najee za to korisni SD kartica.

Senzor blizine
Senzor blizine registruje ako se neki objekat priblii zvuniku za
razgovor na telefonu. Veoma pametno je ovaj senzor iskorien kako bi reio
problem sluajnog dodira ekrana pri razgovoru kada uvo i lice korisnika mogu
doi u kontakt sa ekranom i izazvati neku nepoeljnu akciju. Senzor registruje
2 stanja: blizu i daleko, i kada detektuje stanje blizu tada ekran postaje
neosetljiv na dodir. Ima i puno aplikacija koje koriste ovaj senzor na
najrazliitije naine, meu njima se izdvaja Smart Screen Off aplikacija ija je
uloga uteda baterije tako to se ekran gasi kada se neki objekat priblii
senzoru bilo da je to pri razgovoru ili je telefon okrenut licem na dole na stolu
ili se nalazi u depu.
Smart Screen
Off PRO

Pro verzija daje mnoge dodatne opcije koje


besplatna verzija nema. Mogue je podesiti
vremensko kanjenje sa kojim e se ekran gasiti
kada se registruje blizina nekog objekta, moe se
ukljuiti vibracija kada se ekran ugasi ili upali,
aplikacije se moe aktivirati/deaktivirati
protresanjem telefona itd...

Postoje i aplikacije koje u druge svrhe koriste ovaj


senzor, na primer Pushup Counter koja broji
sklekove svaki put kada se pribliimo telefonu
(pod uslovom da je na podu ispod nas dok radimo
sklekove) ili aplikacija Electric Shaver koja
proizvodi zvuk elektrinog brijaa i menja zvuk
kada telefon pribliimo licu.

Senzor ubrzanja
Veliki broj aplikacija koristi senzor ubrzanja kao deo korisnikog
interfejsa. Na osnovu ovog senzora moe se dobiti informacija da li se telefon
kree, da li se trese kao i u kom smeru se kree. Kod veine aplikacija
interfejs e se prikazati na ekranu u zavisnosti od toga da li je telefon u
uspravnom ili horizontalnom poloaju:
-interfejs se prilagoava poziciji
telefona
i tako je data jo jedna kontrola
korisniku koju moe iskoristiti kao
na primeru na slici, pri kucanju
tastatura je znatno preglednija
kada je telefon u vodoravnom
poloaju.

Takoe, ovaj senzor se efikasno upotrebljava kao upravljanje u mnogim


igricama i na taj nain daje poseban znaaj igranju igrica na Android telefonu
to takoe doprinosi popularnosti ove platforme. Na slici moemo videti
primer upotrebe ovog senzora u aplikaciji Moto X Mayhem:
-kada nagnemo telefon u
levo motociklista
prebacuje teinu nazad.

-a kada ga nagnemo u desno


motociklista prebacuje teinu napred.

Bluetooth radio
Android ureaji poseduju
Bluetooth primopredajnik koji
omoguava beinu razmenu informacija sa drugim Bluetooth ureajima.
Najee se koristi za prenos fajlova sa jednog ureaja na drugi i za to se
moe iskoristiti aplikacija Bluetooth File Transfer koja prua dobru
organizaciju prenosa podataka.
Bluetooth File
Transfer

Veza sa drugim ureajem se moe


uspostaviti samo ukoliko to potvrde obe
strane i na ovaj nain se prua neki vid
sigurnosti. Kod prenosa fajlova je bitan
pregled i pretraga fajlova radi lakeg
obavljanja transfera i ovde je to dobro
reeno. Mogue je prilagoditi interfejs po
svojoj elji, mogu se pretraivati arhive
fajlova, mogu se slati kontakti sa brojem i
ostalim informacijama.

Jo jedna esta upotreba Bluetooth-a je za


hands free razgovore najee pri vonji automobila. U ovom sluaju
Bluetooth se koristi za prenos zvunih talasa od telefona do beinih slualica
i tako omoguava razgovaranje telefonom bez upotrebe ruku koje mogu da
ostanu na volanu. Primer aplikacije koja ima ovu funkciju je Auto Bluetooth
koja pri dolazeem pozivu aktivira Bluetooth i spaja se sa beinim
slualicama na koje prenosi zvuk. Takoe po zavretku razgovora automatski
gasi Bluetooth i tako tedi bateriju.

Auto
Bluetooth

Kamera

Kameru koristimo za snimanje fotografija i video klipova a postoje


aplikacije koje na tu osnovnu ulogu kamere dodaju razne mogunosti. Jedan
primer je aplikacija Cartoon Camera koja realnu sliku koja se vidi kroz kameru
obrauje tako da izgleda kao crte:
-jedinstvena
aplikacija ovog tipa,
poseduje razna
podeavanja u vidu
izraenosti ivica,
kontrasta boja, kao
i modove za
slikanje: sa bojom,
crno-beli, sephia ...

Cartoon
Camera

Jo jedna aplikacija koja dodaje funkcionalnost kameri je Night Vision Camera


pomou koje se moe koristiti noni mod slikanja. Puno aplikacija postoji koje
na slian nain iskoriavaju kameru i dodaju zanimljive opcije i tako daju
korisnicima nove mogunosti.

Aplikacije mogu da interaguju sa korisnicima koji mogu tako upravljati


do neke mere radom aplikacije. Ova interakcija moe biti obavljena na razne
naine ali za aplikaciju to uvek predstavlja informaciju koju ona prikuplja i
procesira i od koje zavisi funkcija koju e obaviti.
Programiranje Andrioid aplijacija se radi u programskom jeziku Java tako da
je potreban JDK (Java Developement Kit), i softverski alat bez kojeg je takoe
nemogue razvijati ove aplikacije je Android SDK (Software Developement
Kit). Android SDK sadri debager, Android biblioteke, dokumentaciju sa
primerima i emulator. Emulator omoguava testiranje aplikacija bez
konkretnog Android ureaja tj. na istom kompjuteru na kome razvijamo
aplikaciju moemo i pokrenuti emulator i izvriti odgovarajue testove.
Android pametni telefoni se mogu puno razlikovati u zavisnosti od
proizvoaa i modela. Rezolucija ekrana, brzina procesora, hardverske
komponente su samo neki od elemenata koji svi utiu na to kako e neka
aplikacija raditi na konkretnom ureaju. Takoe u svakom trenutku ima puno
korisnika koji ne koriste najnoviju verziju Android-a tako da i to treba uzeti u
obzir pri razvijanju aplikacije. Kada se poetkom 2011. pojavila verzija 2.3,
zastupljenost verzija je bila kao na slici:

V 2.3; 0% V 1.5; 5%
V 1.6; 8%

V 2.2; 52%
V 2.1; 35%

Raspodela verzija Android-a sa poetka 2011.

Cilj programera je da njihove aplikacije budu podrane od najveeg mogueg


broja ureaja tako da ukoliko su one razvijane za starije verzije operativnog
sistema radie i na novijim verzijama i to se radi u sluajevima da aplikacija
ne zahteva opcije koje nude samo novije verzije. Ovde do izraaja dolazi
upotreba emulatora koji omoguava testiranje na razliitim verzijama
operativnog sistema, razliitim rezolucijama ekrana i drugim
karakteristikama koje se razlikuju od modela do modela.
Izgled emulatora na raunaru

Pri razvijanju neke aplikacije prva faza obuhvata dizajniranje korisnikog


interfejsa a zatim na red dolazi samo kodiranje. Korisniki interfejs
predstavlja bitan deo aplikacije jer odreuje nain na koji korisnik ostvaruje
interakciju sa samom aplikacijom. Za njegovo razvijanje koristi se XML
progamski jezik. U ovom stupnju se postavljaju elementi koji e se
pojavljivati na ekranu i kojima e se korisniku davati potrebne informacije o
procesu koji se odvija kao i odgovarajue kontrole koje ima nad aplikacijom.
XML u potpunosti odreuje kako e aplikacija izgledati dok se rad aplikacije
tj. procesi koji e se odvijati dok aplikacija izvrava neku zadatu funkciju
kodiraju u Java-i.

Vie o programiranju Android aplikacija moete pogledati u knjizi

''Android Application developement for Dummies'' koja je i koriena kao


literatura i za ovaj rad.

Jo informacija je korieno sa online prodavnice aplikacija Google Play

https://play.google.com/store
Ispitna pitanja iz rada Android Aplikacije glase:

1.Pogodnosti Android-a kao open source platforme.

2.Navesti osnovne hardverske alate Android ureaja i objasniti kako


se mogu koristiti u aplikacijama.

You might also like