event:android_development
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
event:android_development [2013/03/25 22:59] – Further-development workshop da3m0n22 | event:android_development [2025/03/13 14:21] (current) – fix templatere plugin invocation root | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ~~NOCACHE~~ | ||
+ | ======== Android Development Series ======== | ||
+ | {{template> | ||
+ | name=Android Development| | ||
+ | image=http:// | ||
+ | organizer=[[user: | ||
+ | datetime=weekly since 4.2.2013, 19h| | ||
+ | place=brmlab| | ||
+ | stream=[[stream]] }} | ||
+ | |||
+ | 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. | ||
+ | |||
+ | ======== Workshopy ======== | ||
+ | |||
+ | Workshopy jsou specifikovány, | ||
+ | |||
+ | |||
+ | ======== 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:// | ||
+ | |||
+ | 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í, | ||
+ | * example: Hello World | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * (2) Struktura aplikace, MVC pattern, Activity life-cycle, způsoby uložení dat | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * example: CRUD nad SharedPreferences, | ||
+ | * (3) Vlákna, responzivita aplikace, AsyncTask, Práce se sítí | ||
+ | * example: Načítání dat z webového zdroje, persistence, | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * (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, | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * (5) ActionBar (ABS, Split), Options Menu, Context Menu, Dialogs, Intents | ||
+ | * example: Využití ActionBarSherlock, | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * (6) Layout variants, Maven | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * (7) Pokročilá témata: | ||
+ | * {{: | ||
+ | * [[http:// | ||
+ | * (8) Pokročilá témata: 2D/3D Grafika, Ochrana kódu (ProGuard), Code Quality (FindBugs, CodePro, PMD) | ||
+ | |||
+ | |||
+ | < | ||
+ | ======== Použité technologie ======== | ||
+ | |||
+ | * Java | ||
+ | * XML | ||
+ | * SQL | ||
+ | * JSON | ||
+ | * SVN/GIT | ||
+ | |||
+ | ======== Podporované vývojové nástroje ======== | ||
+ | |||
+ | * Eclipse | ||
+ | * Eclipse ADT | ||
+ | * FindBugs (statická analýza java kódu) | ||
+ | * Testování na fyzickém zařízení (použití AVD na vlastní nebezpečí, | ||
+ | * draw9patch - pro úpravu grafických assetů pro 9patch resizing | ||
+ | |||
+ | ======== Příprava vývojového prostředí ======== | ||
+ | |||
+ | <note tip> | ||
+ | |||
+ | * 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:// | ||
+ | * Nainstalovat Android SDK ([[http:// | ||
+ | * Stáhnout aktualizace pro SDK a nainstalovat SDK API 17 (Sources, Javadoc, Google API) ([[http:// | ||
+ | * Nainstalovat z [[http:// | ||
+ | * Nastavit proměnnou prostředí PATH tak aby obsahovala cestu ke složce {android_sdk/ | ||
+ | |||
+ | ======== Knowledge Base (EN) ======== | ||
+ | |||
+ | < | ||
+ | |||
+ | * Robotium testing: http:// | ||
+ | * Supporting multiple screen resolutions: | ||
+ | * ORM: | ||
+ | * http:// | ||
+ | * https:// | ||
+ | * Permissions explained | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * Supporting multiple API levels: | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * ActionBar for backsupport API lower than 11 | ||
+ | * http:// | ||
+ | * Fastest JSON Serialize/ | ||
+ | * http:// | ||
+ | * Java Static Code Analysis | ||
+ | * http:// | ||
+ | * LINT (ADT since API 16 built-in) http:// | ||
+ | * http:// | ||
+ | * Avoiding Memory Leaks (Context Memory leaks) | ||
+ | * http:// | ||
+ | * ACRA - collecting crash logs from devices (many useful info for debugging in deploy stage) | ||
+ | * http:// | ||
+ | * AVD (Android Virtual Device) - Emulator enhancement | ||
+ | * http:// | ||
+ | * Java pass-by-reference / pass-by-value explanation | ||
+ | * http:// | ||
+ | * Android introduction, | ||
+ | * http:// | ||
+ | ======== Knowledge Base (CZ) ======== | ||
+ | |||
+ | * Seriál o vývoji na Zdrojak.cz | ||
+ | * http:// | ||
+ | |||
+ | {{tag> |