Novinky.
- druhý (opravný) termín obhajoby bude 4. júna od 13:30 v P7
- aktualizácia požiadaviek:
- aktivity v projekte musia mať korektne implementovaný životný cyklus
- uvádzajte presné zdroje (URL) cudzích kódov
Hodnotenie projektu
Systémové programovanie sa končí ohodnotením samostatne vypracovávaného projektu s nasledovnými charakteristikami:
- zvoľte si tému projektu. Inšpirujte sa brainstormingom, aplikáciami z Google Play, či iných platforiem
- vyberte si technologické črty vášho projektu. Na úspešnú obhajobu projektu si vyberte črty v minimálnej sume 15 bodov a úspešne ich obhájte v minimálnej sume 12 bodov.
- projekt vypracujte samostatne. Tímové projekty nie sú povolené.
- osobne ho obhájte v stanovený dátum.
Nutné požiadavky
- pri vývoji predpokladajte minimálny API Level 9 (Android 2.3)
- aplikácia musí korektne bežať na oboch vetvách platformy: na Androide 2.x i na Androide 4.x.
- ak využívate cudzí kód alebo externú knižnicu, uveďte exaktný odkaz na jeho autora alebo pôvodinu.
Technologické črty
- aktivita: minimálne dve netriviálne (1 bod + 1 bod za každú dodatočnú aktivitu). Každá aktivita musí mať korektne implementovaný životný cyklus a byť schopná vysporiadať sa so zmenou konfigurácie (otočenie zariadenia).
- SQL: využitie relačnej databázy, contentprovidery, loadery (2 body)
- nepoužívajte metódy
managedQuery()
a pod. na vykonávanie kódu v hlavnom vlákne; sú zakázané a namiesto nich využite loadery. - využitie viactabuľkového contentloadera (1 body)
- nepoužívajte metódy
- preferencie: využitie preferencií vrátane preferenčnej aktivity (1 bod)
- služby: služba založená na IntentService (1 bod)
- bindery$$$: služba využívajúca Bindery (2 body)
- zoznamy, mriežky, tabuľky: využitie zoznamu, mriežky či podobného komponentu s adaptérom (1 bod)
- ViewBinder$$$: návrh vlastného adaptéra s ViewBinderom (1 bod)
- netradičný komponent$$$: využitie netradičného komponentu z knižnice Androidu, či z externej knižnice (1bod)
- fragment: aktivita s fragmentami (1 bod)
- aktivita s viac než jedným fragmentom (1 bod)
- tabs (karty) (1 bod)
- swiping view (1 bod)
- HTTP klient: využitie HTTP klienta, resp.
URLConnection
na komunikáciu so serverom (1 bod) - notifikácie (1 bod)
- dialóg (1 bod)
- senzory: využitie niektorého senzora (GPS, krokomer) (1 bod za každý senzor)
- fotoaparát/videokamera (1 bod)
- vlastné vykresľovanie náhľadu$$$ (1 bod)
- zdieľanie: odosielanie či prijímanie dát do iných aplikácií (1 bod za odosielanie, 1 za prijímanie)
- zdieľania cez Android Easy Share$$$
- kompatibilná knižnica v7 (1 bod)
- vlastná modifikácia ActionBaru$$$: obohatenie ActionBaru o vlastné komponenty: vyhľadávanie, špeciálne tlačidlá (1 bod)
- externá knižnica$$$ využitie externej Java knižnice v projekte (1 bod)
- vlastný štýl aplikácie$$$ (1 bod)
- synchronizácia$$$ s využitím synchronizačného API Androidu (2 body)
Črty označené $$ sú bonusové a priamo sa na stretnutiach nepreberali, alebo sa preberali v zjednodušenej forme. Pomôže Vám literatúra, dokumentácia k Androidu a StackOverflow.