rudo halmi: začíname programovať android aplikácie
TRANSCRIPT
![Page 1: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/1.jpg)
08.11.2012 Rudolf Halmi 1
Ako začať s programovaním pre Android
![Page 2: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/2.jpg)
08.11.2012 Rudolf Halmi 2
Osnova
Nástroje
Začíname s vývojom
Tipy a triky
Hrabeme sa v kóde
![Page 3: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/3.jpg)
08.11.2012 Rudolf Halmi 3
Nástroje
Inštalácia Ubuntu 12.10http://www.ubuntu.com/download/desktop
● Java● Android SDK tools
● Intellij Idea
![Page 4: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/4.jpg)
08.11.2012 Rudolf Halmi 4
Java
● sudo add-apt-repository ppa:webupd8team/java● sudo apt-get update● sudo apt-get install oracle-java7-installer● sudo update-java-alternatives -s java-7-oracle
![Page 5: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/5.jpg)
08.11.2012 Rudolf Halmi 5
Intellij Idea & Android SDK
IntelliJ Idea – community edition
● http://www.jetbrains.com/idea/download/index.html
Android SDK tools
● http://developer.android.com/sdk/index.html
![Page 6: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/6.jpg)
08.11.2012 Rudolf Halmi 6
Stiahnutie SDK API
● Spustíme si android-sdk-linux/tools ./android
![Page 7: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/7.jpg)
08.11.2012 Rudolf Halmi 7
Stiahnutie SDK API
![Page 8: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/8.jpg)
08.11.2012 Rudolf Halmi 8
Spustenie Idei
● Pri prvom spustení nič neimportujem
![Page 9: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/9.jpg)
08.11.2012 Rudolf Halmi 9
Idea
![Page 10: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/10.jpg)
08.11.2012 Rudolf Halmi 10
Začíname s vývojom
● Konfigurácia Idei● Nový projekt
● Popis adresárov projektu● 64 bitový problém
● Vytvorenie AVD● Spustenie app
![Page 11: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/11.jpg)
08.11.2012 Rudolf Halmi 11
Konfigurácia Idei
● Konfigurácia SDK● File → Project Structure● Add new SDK
● Najprv cesta k Jave● /usr/lib/jvm/java-7-oracle
● Potom k Android SDK
![Page 12: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/12.jpg)
08.11.2012 Rudolf Halmi 12
Nový projekt
● Klikneme na Create new project
● A potom na Create project from scratch
![Page 13: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/13.jpg)
08.11.2012 Rudolf Halmi 13
Nový projekt● Vyplníme formulár
![Page 14: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/14.jpg)
08.11.2012 Rudolf Halmi 14
Popis adresárov projektu
● Assets – priamy prístup● Bin - kompilovane● Gen – generovane R● Res - resource● Src - zdrojaky● AndroidManifest.xml
![Page 15: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/15.jpg)
08.11.2012 Rudolf Halmi 15
64 bitový problém
● Pri pokuse o spustení app ADB sa nedá spustiť● Nutné doinštalovať ia32-libs
![Page 16: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/16.jpg)
08.11.2012 Rudolf Halmi 16
Vytvorenie AVD
● Po kliknutí na zelenú ikonu (play)
● Sa otvorí okno na spustenie app
![Page 17: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/17.jpg)
08.11.2012 Rudolf Halmi 17
Vytvorenie AVD
● Klikneme na NEW
![Page 18: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/18.jpg)
08.11.2012 Rudolf Halmi 18
● Zvolíme si API● Veľkosť SD karty● Rozlíšenie● Príp. ďalšie
parametre
![Page 19: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/19.jpg)
08.11.2012 Rudolf Halmi 19
Vytvorenie AVD
● Hláška potvrdí vytvorenie emulátora
![Page 20: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/20.jpg)
08.11.2012 Rudolf Halmi 20
Spustenie app
● Späť v okne spustenia app si zvolíme emulátor
![Page 21: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/21.jpg)
08.11.2012 Rudolf Halmi 21
Spustenie app
![Page 22: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/22.jpg)
08.11.2012 Rudolf Halmi 22
Tipy a triky
● Popis res adresárov● Layouty
● WYSIWYG editor● Rozmery widgetov
● Stringy● Farby
● Obrázky● Tvary
![Page 23: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/23.jpg)
08.11.2012 Rudolf Halmi 23
Popis res adresárov
● Anim● Drawable● Layout● Raw● Values● Xml
http://developer.android.com/training/basics/supporting-devices/index.html
![Page 24: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/24.jpg)
08.11.2012 Rudolf Halmi 24
Layouty
● Programovo alebo XML● GUI prvky sa volajú Widgety● Priradenie ID cez android:id● Jeden root layout, v ňom widgety, alebo
vnorené layouty
● LinearLayout● RelativeLayout
![Page 25: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/25.jpg)
08.11.2012 Rudolf Halmi 25
LinearLayout
Vertikálny Horizontálny
![Page 26: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/26.jpg)
08.11.2012 Rudolf Halmi 26
RelativeLayout
Vrstvy Relatívna pozícia
![Page 27: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/27.jpg)
08.11.2012 Rudolf Halmi 27
WYSIWYG editor
● Ak sa mi nechce písať XML● Ak chcem rýchlo spraviť koncept GUI● Eclipse - UI designer v ADT● DroidDraw
● Java v browseri● Standalone app – Linux, Mac, Win
![Page 28: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/28.jpg)
08.11.2012 Rudolf Halmi 28
WYSIWYG editor – DroidDraw
![Page 29: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/29.jpg)
08.11.2012 Rudolf Halmi 29
Rozmery widgetov
● layout_width a layout_height● wrap_content● fill_parent (match_parent)● Rozmer a jednotka
– http://developer.android.com/guide/topics/resources/more-resources.html#Dimension
● Dip – density
independent pixels
![Page 30: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/30.jpg)
08.11.2012 Rudolf Halmi 30
Rozmery widgetov
● Dip
![Page 31: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/31.jpg)
08.11.2012 Rudolf Halmi 31
Rozmery widgetov
● Referencia z xml súboru● Vytvoríme si /values/dimensions.xml
<resources>
<dimen name="text_width">100dip</dimen></resources>
● Priradíme widgetu:layout_width="@dimen/text_width"
● Pre rôzne konfigurácie
rôzne veľkosti
![Page 32: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/32.jpg)
08.11.2012 Rudolf Halmi 32
Stringy
● Pridáme si do layoutu EditText
● Nie je dobré vpisovať stringy priamo do layoutu● Otvoríme si /values/strings.xml a pridáme
![Page 33: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/33.jpg)
08.11.2012 Rudolf Halmi 33
Stringy
● Tieto texty priradíme widgetom
![Page 34: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/34.jpg)
08.11.2012 Rudolf Halmi 34
Farby
● Vytvoríme si /values/colors.xml● Pridáme si novú farbu
● 4 Hexa hodnoty (00 - FF)● FF – priehľadnosť● ED – červená zložka● CB – zelená zložka● 40 – modrá zložka
![Page 35: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/35.jpg)
08.11.2012 Rudolf Halmi 35
Farby
● Priradenie v layoute:
● http://colorschemedesigner.com/
![Page 36: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/36.jpg)
08.11.2012 Rudolf Halmi 36
Obrázky
● Zmena pozadia buttonu – nine patchhttp://developer.android.com/tools/help/draw9patch.html
● Button má rôzne stavy → XML/drawable/mybutton.xml
![Page 37: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/37.jpg)
08.11.2012 Rudolf Halmi 37
Obrázky
● Priradenie novej grafiky buttonu:
![Page 38: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/38.jpg)
08.11.2012 Rudolf Halmi 38
Tvary
● Namiesto obrázkov použijeme v xml zadefinovaný tvar
● Zaoblené rohy● Gradient 3 farieb● Zadefinujeme si 3 nové farby do colors.xml
![Page 39: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/39.jpg)
08.11.2012 Rudolf Halmi 39
Tvary
● Vytvoríme si /res/drawable/mygradient.xml
![Page 40: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/40.jpg)
08.11.2012 Rudolf Halmi 40
Tvary
● Priradíme ho nášmu root Layoutu a vycentrujeme
![Page 41: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/41.jpg)
08.11.2012 Rudolf Halmi 41
Hrabeme sa v kóde
● Životný cyklus aplikácií● OnClickListener
● Implementácia metódy onClick
![Page 42: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/42.jpg)
08.11.2012 Rudolf Halmi 42
Životný cyklus aplikácií
● Otvoríme si MyActivity.java● Vidíme metódu onCreate, existujú aj ďalšie
![Page 43: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/43.jpg)
08.11.2012 Rudolf Halmi 43
Životný cyklus aplikácií
● http://developer.android.com/training/basics/activity-lifecycle/index.html
![Page 44: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/44.jpg)
08.11.2012 Rudolf Halmi 44
OnClickListener
● Overridneme si metódu onStart() a zaregistrujeme si OnClickListener na Button
● Pripravíme si referencie na widgety
![Page 45: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/45.jpg)
08.11.2012 Rudolf Halmi 45
OnClickListener
● Nainicializujeme si ich v onStart
![Page 46: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/46.jpg)
08.11.2012 Rudolf Halmi 46
Implementácia metódy onClick
● Pridáme si kontrolnú hlášku do stringov
● Doplníme kód metódy onClick
![Page 47: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/47.jpg)
08.11.2012 Rudolf Halmi 47
Implementácia metódy onClick
Prázdne meno Vyplnené meno
![Page 48: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/48.jpg)
08.11.2012 Rudolf Halmi 48
Ešte pár linkov
● NazdarSvet: http://goo.gl/dU13y
● Prezentácia: http://goo.gl/wZ2TU
● http://www.mojandroid.sk/vyvoj-android-aplikacii/piseme-prvu-android-aplikaciu
● http://developer.android.com/sdk/installing/index.html● http://developer.android.com/about/dashboards/index.html
● http://developer.android.com/training/index.html
● http://developer.android.com/guide/components/index.html
● http://www.droiddraw.org/
![Page 49: Rudo Halmi: začíname programovať Android aplikácie](https://reader034.vdocuments.pub/reader034/viewer/2022052400/55a1aa8a1a28abf31e8b47db/html5/thumbnails/49.jpg)
08.11.2012 Rudolf Halmi 49
Ďakujem za pozornosť
V prípade otázok: [email protected]
alebo aj ak robíte grafiku :)