Contact
Sponsors
| ||||
|---|---|---|---|---|
| Day | Events | |||
| 06/18 Tuesday | 1930 - meetup 2000 Project Night | |||
| 06/19 Wednesday | ||||
| Day | Events | |||
This shows you the differences between two versions of the page.
|
event:android_development [2013/02/05 19:53] da3m0n22 [Příprava vývojového prostředí] |
event:android_development [2013/04/23 21:55] (current) da3m0n22 Workshopy zrušeny pro nedostatek zájmu |
||
|---|---|---|---|
| Line 6: | Line 6: | ||
| image=http://ondrejcermak.info/wp-content/uploads/2010/11/Android_logo.svg_.png| | image=http://ondrejcermak.info/wp-content/uploads/2010/11/Android_logo.svg_.png| | ||
| founder=[[user:da3m0n22]]| | founder=[[user:da3m0n22]]| | ||
| - | datetime=since 4.2.2013| | + | datetime=weekly since 4.2.2013, 19h| |
| place=brmlab| | place=brmlab| | ||
| stream=[[stream]] }} | stream=[[stream]] }} | ||
| - | Každý týden 1-2 hodinová přednáška na téma vývoj aplikací pro Android, v rámci které realizujeme example aplikaci na probranou teorii. Přednášky a záznamy z přednášek budou vystaveny zde na wiki. | + | Každý týden přibližně hodinová přednáška na téma vývoj aplikací pro Android, a následně workshop v rámci kterého realizujeme example aplikaci na probranou teorii. Workshop se dle zkušeností může protáhnout i na 3 hodiny. Přednášky a záznamy z přednášek budou vystaveny zde na wiki. |
| Konkrétní den stanovíme do konce ledna 2013, přednášky budou probíhat od prvního týdne v únoru. | Konkrétní den stanovíme do konce ledna 2013, přednášky budou probíhat od prvního týdne v únoru. | ||
| - | ======== Návrh prvních přednášek ======== | + | ======== Workshopy ======== |
| + | |||
| + | Workshopy jsou specifikovány, ale kvůli nedostatku zájmu se nebudou realizovat, pokud bude zájem o vytvoření workshopu, kontaktovat [[user:da3m0n22]] | ||
| + | |||
| + | |||
| + | ======== Bugfixing Workshop ======== | ||
| + | |||
| + | Po skonceni zakladniho kurzu se pokusime v brmlabu zorganizovat workshop, ktery se zameri na fixovani problemu existujicich open-source Android aplikaci. Identifikujeme vhodne aplikace, ktere kazdy z nas vyuziva, a na strance jednotlivych aplikaci projedeme seznam hlasenych chyb. Nektere z nich se pokusime (ci uz spolecne nebo samostatne) opravit a poslat opravy zpatky autorum. O workshopu budeme vcas informovat. | ||
| + | |||
| + | ======== Further-development Workshop ======== | ||
| + | |||
| + | [[https://github.com/smarek/Simple-Dilbert]] | ||
| + | |||
| + | Workshop zaměřený na vývoj a přidávání funkčností do existujícího projektu. Pro účely praxe v týmovém vývoji, přebírání exisutjícího kódu, používání Github (Issues, Pull Request, Wiki), vytváření dokumentace (Javadoc) a kontroly kvality kódu. | ||
| + | |||
| + | Pro účely workshopu se práce rozdělí podle schopností a problematiky do více prací a ty budou rozděleny jednotlivcům nebo týmům. | ||
| + | |||
| + | Example aplikace je zároveň zveřejněná v Google Play (Android Market), takže se budeme zabývat praxí správy aplikace v Google Play, podpory, nahrávání a vytváření nových verzí... | ||
| + | |||
| + | ======== Plán přednášek ======== | ||
| * (1) Nastavení vývojového prostředí, úvod do struktury aplikace, podpora různých HW a SW konfigurací | * (1) Nastavení vývojového prostředí, úvod do struktury aplikace, podpora různých HW a SW konfigurací | ||
| * example: Hello World | * example: Hello World | ||
| + | * {{:event:helloworld.zip|Projekt Eclipse ke stažení}} | ||
| + | * {{:event:android_1.pdf|Prezentace PDF}} | ||
| + | * [[http://nat.brmlab.cz/talks/android/2013-02-06-android.mkv|Záznam přednášky]] | ||
| * (2) Struktura aplikace, MVC pattern, Activity life-cycle, způsoby uložení dat | * (2) Struktura aplikace, MVC pattern, Activity life-cycle, způsoby uložení dat | ||
| + | * {{:event:helloworld2.zip|Projekt Eclipse ke stažení}} | ||
| + | * {{:event:android_2.pdf|Prezentace PDF}} | ||
| + | * [[http://nat.brmlab.cz/talks/android/2013-02-13-android.mkv|Záznam přednášky]] | ||
| * example: CRUD nad SharedPreferences, Files, Cache, SQL | * example: CRUD nad SharedPreferences, Files, Cache, SQL | ||
| * (3) Vlákna, responzivita aplikace, AsyncTask, Práce se sítí | * (3) Vlákna, responzivita aplikace, AsyncTask, Práce se sítí | ||
| * example: Načítání dat z webového zdroje, persistence, zobrazení | * example: Načítání dat z webového zdroje, persistence, zobrazení | ||
| - | * (4) Pokročilé UI, 9patch, Seznamy, Fragmenty | + | * {{:event:android3.zip|Projekt Eclipse ke stažení}} |
| + | * {{:event:android3_update.zip|Projekt Eclipse po workshopu}} | ||
| + | * {{:event:android_3.pdf|Prezentace PDF}} | ||
| + | * [[http://nat.brmlab.cz/talks/android/2013-02-27-android.mkv|Záznam přednášky]] | ||
| + | * (4) Pokročilé UI (UI pro API > v11, Action Bar), 9patch, Seznamy, Fragmenty, Zpětná kompatibilita (Support v4, v13) | ||
| * example: Seznam načtených dat, onItemClickedListener, využití fragmentu Google Maps API | * example: Seznam načtených dat, onItemClickedListener, využití fragmentu Google Maps API | ||
| - | * (5) UI pro API > v11, Action Bar, zpětná kompatibilita (poskytování nové UI a funkčnosti pro zařízení ve zpětné kompatibilitě) | + | * {{:event:android_4.pdf|Přednáška v PDF}} |
| + | * {{:event:android4.zip|Projekt Eclipse pro Workshop}} | ||
| + | * [[http://nat.brmlab.cz/talks/android/2013-03-06-android.mkv|Záznam přednášky]] | ||
| + | * (5) ActionBar (ABS, Split), Options Menu, Context Menu, Dialogs, Intents | ||
| * example: Využití ActionBarSherlock, Support v4/v11 library, options a context menu | * example: Využití ActionBarSherlock, Support v4/v11 library, options a context menu | ||
| - | * (6) Pokročilá témata: Maven, NDK, Bezpečnost, GC, Memory Leaks, Čistota kódu | + | * {{:event:android_5.pdf|Prezentace PDF}} |
| - | * (7) Pokročilá témata: 2D/3D Grafika, Ochrana kódu (ProGuard), Code Quality (FindBugs, CodePro, PMD) | + | * {{:event:android5.zip|Projekt Eclipse pro Workshop}} |
| + | * [[http://nat.brmlab.cz/talks/android/2013-03-13-android.mkv|Záznam přednášky]] | ||
| + | * (6) Layout variants, Maven | ||
| + | * {{:event:android6.zip|Projekt Eclipse pro Workshop a Přednášku}} | ||
| + | * {{:event:android_6.pdf|Prezentace PDF}} | ||
| + | * [[http://nat.brmlab.cz/talks/android/2013-03-27-android.mkv|Záznam přednášky]] | ||
| + | * (7) Pokročilá témata:NDK, Bezpečnost, GC, Memory Leaks, Čistota kódu | ||
| + | * {{:event:android_7.pdf|Prezentace PDF}} | ||
| + | * [[http://nat.brmlab.cz/talks/android/2013-04-03-android.mkv|Záznam přednášky]] | ||
| + | * (8) Pokročilá témata: 2D/3D Grafika, Ochrana kódu (ProGuard), Code Quality (FindBugs, CodePro, PMD) | ||
| + | |||
| + | <note>Pokud nejsou aktuální záznamy přednášek nalinkovány sem, jsou k nalezení na adrese: http://nat.brmlab.cz/talks/android/</note> | ||
| ======== Použité technologie ======== | ======== Použité technologie ======== | ||
| Line 49: | Line 92: | ||
| <note tip>Sežeňte si pro vývoj fyzické android zařízení s Android verze 4 (API 14 a výše)</note> | <note tip>Sežeňte si pro vývoj fyzické android zařízení s Android verze 4 (API 14 a výše)</note> | ||
| + | * Nainstalovat JDK a JRE prostředí | ||
| * Stáhnout Eclipse poslední verzi pro Java vývoj (verze 3.8 by neměla dělat problémy) ([[http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/junosr1|Eclipse Juno]]) | * Stáhnout Eclipse poslední verzi pro Java vývoj (verze 3.8 by neměla dělat problémy) ([[http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/junosr1|Eclipse Juno]]) | ||
| * Nainstalovat Android SDK ([[http://developer.android.com/sdk/index.html|Stažení a instalační instrukce]]) | * Nainstalovat Android SDK ([[http://developer.android.com/sdk/index.html|Stažení a instalační instrukce]]) | ||
| Line 54: | Line 98: | ||
| * Nainstalovat z [[http://marketplace.eclipse.org/|Marketplace]] ADT plugin ([[http://developer.android.com/sdk/installing/installing-adt.html|Dokumentace ADT a Návod na instalaci]]) | * Nainstalovat z [[http://marketplace.eclipse.org/|Marketplace]] ADT plugin ([[http://developer.android.com/sdk/installing/installing-adt.html|Dokumentace ADT a Návod na instalaci]]) | ||
| * Nastavit proměnnou prostředí PATH tak aby obsahovala cestu ke složce {android_sdk/platform-tools} | * Nastavit proměnnou prostředí PATH tak aby obsahovala cestu ke složce {android_sdk/platform-tools} | ||
| + | |||
| + | ======== Knowledge Base (EN) ======== | ||
| + | |||
| + | <note>Informace, které asi nebudete potřebovat všechny, ale rozhodně stojí za zmínku, pokud to myslíte vážně</note> | ||
| + | |||
| + | * Robotium testing: http://www.vogella.com/articles/AndroidTesting/article.html | ||
| + | * Supporting multiple screen resolutions: http://developer.android.com/guide/practices/screens_support.html | ||
| + | * ORM: | ||
| + | * http://ormlite.com/ | ||
| + | * https://www.activeandroid.com/ | ||
| + | * Permissions explained | ||
| + | * http://developer.android.com/reference/android/Manifest.permission.html | ||
| + | * http://www.android-permissions.org/permissionmap.html | ||
| + | * Supporting multiple API levels: | ||
| + | * http://developer.android.com/guide/topics/manifest/uses-sdk-element.html | ||
| + | * http://stackoverflow.com/a/4994039/492624 | ||
| + | * ActionBar for backsupport API lower than 11 | ||
| + | * http://actionbarsherlock.com/ | ||
| + | * Fastest JSON Serialize/Deserialize library | ||
| + | * http://jackson.codehaus.org/ | ||
| + | * Java Static Code Analysis | ||
| + | * http://www.jutils.com/eclipse/index.html | ||
| + | * LINT (ADT since API 16 built-in) http://tools.android.com/tips/lint | ||
| + | * http://findbugs.sourceforge.net/ | ||
| + | * Avoiding Memory Leaks (Context Memory leaks) | ||
| + | * http://android-developers.blogspot.cz/2009/01/avoiding-memory-leaks.html | ||
| + | * ACRA - collecting crash logs from devices (many useful info for debugging in deploy stage) | ||
| + | * http://acra.ch/ | ||
| + | * AVD (Android Virtual Device) - Emulator enhancement | ||
| + | * http://www.developer.com/ws/android/development-tools/supercharge-your-android-emulator-speed-with-intel-emulation-technologies.html | ||
| + | * Java pass-by-reference / pass-by-value explanation | ||
| + | * http://javadude.com/articles/passbyvalue.htm | ||
| + | ======== Knowledge Base (CZ) ======== | ||
| + | |||
| + | * Seriál o vývoji na Zdrojak.cz | ||
| + | * http://www.zdrojak.cz/clanky/vyvijime-pro-android-zaciname/ | ||