uvod u android programiranje - plava...
TRANSCRIPT
![Page 1: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/1.jpg)
Uvod u Android programiranje
Ivan Vecko i Marko Čučković
#CodeCAMPos
![Page 2: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/2.jpg)
Sadržaj
• Plava tvornica – što rade mobile developeri?
• Android OS
• Način razvijanja aplikacije
• Osnovi elementi aplikacije
• Sadržaj projekta aplikacije
• Elementi korisničkog sučelja
• Izvođenje zadataka u pozadini
• Testiranje i priprema za objavu
![Page 3: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/3.jpg)
![Page 4: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/4.jpg)
Android
• Linux
• Dalvik, ART
• DEX, ODEX, ELF
Android Wear Phones Tablets Android TV Android Auto
![Page 5: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/5.jpg)
![Page 6: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/6.jpg)
![Page 7: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/7.jpg)
![Page 8: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/8.jpg)
![Page 9: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/9.jpg)
Način razvijanja aplikacije
• Android Studio, Eclipse,
Netbeans
• Android SDK
• Emulator (AVD)
• Programski kod (Java)
• XML
• Driveri
![Page 10: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/10.jpg)
Osnovni elementi
• Activity
• Service
• Intent
• Broadcast receiver
• Content Provider
![Page 11: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/11.jpg)
Manifest
• Package, verzija code-a
• Dopuštenja (permissions)
• Aplikacija
• Aktivnosti
• Servisi
![Page 12: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/12.jpg)
Aktivnost (activity)
• Aplikacije se sastoje od
aktivnosti
• Jedna početna aktivnost
• Može pokrenuti drugu
aktivnost
• Stog aktivnosti
• Ima životni vijek
![Page 13: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/13.jpg)
![Page 14: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/14.jpg)
Usluga (Service)
• Karakteristike:
• Nevidljive
• Rade u pozadini - ali
nisu nova nit
• Imaju životni vijek
• Načini izvođenja usluge:
1. Pokrenuta usluga
2. Povezana usluga
![Page 15: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/15.jpg)
Usluga
![Page 16: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/16.jpg)
Namjere (Intents)
• Pokretanje drugih
aktivnosti
1. Eksplicitne
2. Implicitne
• Pokretanje servisa
![Page 17: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/17.jpg)
Broadcast receiver
• Primanje namjera
Content provider
• Dijeljenje sadržaja
![Page 18: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/18.jpg)
Sadržaj projekta aplikacije
• Mapa manifests
• Mapa java
• Mapa res
• Mapa gradle scripts
![Page 19: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/19.jpg)
Stvaranje aktivnosti i definiranje prikaza
● Stvaranje:
○ Java klasa - definira aktivnost (stvaraju
se i popratne datoteke)
○ Definicija aktivnosti u manifestu
● Definiranje prikaza:
○ Layout.xml
○ Programski
![Page 20: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/20.jpg)
Elementi korisničkog sučelja
• Elementi prikaza (views)
• Grupe elemenata prikaza
(view groups)
• 4 vrste razmještaja:
○ LinearLayout
○ RelativeLayout
○ ListView
○ GridView
![Page 21: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/21.jpg)
• Glavni interaktivni elementi korisničkog sučelja:
Kontrole unosa
• Tekstualna polja (Text Fields)
• Gumbi (Buttons)
• Prekidači (Toggle buttons, Switches)
• Kvačice (Checkboxes)
![Page 22: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/22.jpg)
• Glavni interaktivni elementi korisničkog sučelja:
Kontrole unosa
• Izbornici (Radio Buttons)
• Gumbi za odabir vremena
i datuma (Pickers)
• Padajući izbornici (Spinners)
![Page 23: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/23.jpg)
Skočne poruke i dijalozi
• Skočna poruka (Toast)
• Dijalog (AlertDialog,DatePickerDialog i
TimePickerDialog)
![Page 24: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/24.jpg)
Fragmenti
• Podjela aktivnosti na manje komponente
![Page 25: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/25.jpg)
Lokalno čitanje i spremanje podataka
• Osnovne metode pohrane podataka
○ Dijeljene postavke
(SharedPreferences)
○ Stanje instance
○ Interna pohrana datoteka
(u memoriju uređaja)
○ Vanjska pohrana datoteka
(na SD karticu uređaja)
○ SQLite baza podataka
![Page 26: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/26.jpg)
Izvođenje zadataka u pozadini
• Što to točno znači?
• Složeni i vremenski zahtjevni
zadaci
• Zašto je to bitno?
![Page 27: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/27.jpg)
Načini izvođenja zadataka u pozadini
● Asinkrono izvođenje
zadataka u pozadini
(AsyncTask)
● Klasična usluga (Service)
![Page 28: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/28.jpg)
Testiranje i priprema za objavu
• Alfa testiranje
• Beta testiranje
• Priprema za postavljanje
aplikacije na store
![Page 29: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/29.jpg)
Google play
• Registrirati se na:
https://play.google.com/apps/
publish/signup/
• Za objavu potrebno je imati
screenshotove aplikacije,
ikonu aplikacije (512x512
pixela) te navesti opis
proizvoda,
![Page 30: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/30.jpg)
Talk is cheap. Show me the code. Linus Torvalds
![Page 31: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/31.jpg)
Zadatak: Moja prva Android aplikacija
• Autorizacija korisnika
• News Feed
• Profilna slika i sadržaj
• Komentari i lajkovi
• Izgled i layout
• Registracija aplikacije
Rok prijave:
19. travnja 2015.
Više informacija o zadatku na: http://plavatvornica.com/moja_prva_aplikacija/
![Page 32: Uvod u android programiranje - Plava tvornicaplavatvornica.com/wp-content/uploads/2015/04/Uvod-u-Android... · Java klasa - definira aktivnost (stvaraju se i popratne datoteke) Definicija](https://reader031.vdocuments.mx/reader031/viewer/2022020204/5a788c987f8b9a8c428d1804/html5/thumbnails/32.jpg)
• www.plavatvornica.com
• @plavatvornica
• facebook.com/plavatvornica
Ivan Vecko Mobile Developer
Marko Čučković Mobile Developer