spájame
slovenskú
IT komunitu
pridaj sa
Registrácia · Login

Peter Druska 13.5.2011, článok je súčasťou seriálu iOS vývojára príhody a skúsenosti
Hodnoť článok:
0 0

iOS vývojára príhody a skúsenosti (8) - užitočné tipy

Tentoraz si dáme niečo praktické. A síce užitočné zdroje, ktoré môžu začínajúcim vývojárom pomôcť pri <a href="http://www.zajtra.sk/dev/ios-vyvojara-prihody-skusenosti-7-riesenie-problemov/183-clanok.html">riešení problémov</a>. Tipov bude viac než dosť, tak verím, že prinesú bohatý zdroj.

Platí, že v jednej aplikácii je použitie všetkého veľmi nevhodné. Mne sa stalo, že som chcel použiť jednu možnosť, implementoval som to do aplikácie, no zistil, že týmto smerom to nepôjde. Kusy kódu boli zahodené a vyskúšané iné varianty, ktoré sa ukázali ako vhodnejšie. Preto sa nebojte zahodiť už nakódené, je to cesta k úspešnému dokončeniu aplikácie.
Poďme sa teda pozrieť na tipy, ktoré by vám mohli pomôcť v začiatkoch. To, že ovládať angličtinu je nutnosť, nemusím spomínať.

Malé všeobecnosti

Krátke tipy nájdete na Techotopii. Mne to párkrát pomohlo pri riešení niektorých problémov. Nedá sa tam nájsť popis komplexného riešenia, ale ako zdroj krátkych rád je to vinikajúca vec.

Vytvorenie jednoduchej tabuľky

Často sú aplikácie implementáciou tabuľkového rozloženia (UITableView), preto je zvládnutie tejto témy jednou z prvých vecí, ktorú sa na začiatku každej knihy pre začiatočníkov, naučíte.
UITableView
Existuje aj množstvo internetových zdrojov, ktoré pojednávajú o tomto type. Ja som čerpal z blogu iPhoneSDKArticles.com. Je síce z roku 2009, ale napísané stále platí. Vysvetlené jednoducho a funkčne. Pre začiatok veľmi dobrý zdroj.

Popisuje aj zložité rozšírenia tohto pohľadu, pridanie vyhľadávania, indexu, …

Napríklad také pridanie indexu do tabuľkového pohľadu na dáta som riešil podľa návodu na iPhoneDevCentral.com. Potreboval som totiž miesto písmen zobraziť guličky, preto bolo treba pochopiť index do väčšej hĺbky, čo mi poskytol práve tento návod. V mojej tretej aplikácii je to použité v plnej paráde.

Implementácia perzistentných dát

Na perzistentné dáta sa v iOS/Mac OS X používa CoreData. V podstate je to „framework“ pracujúci nad a s databázovou vrstvou. Celý princíp tohto modelu vám veľmi dobre vysvetlia na blogu Ray Wenderlich-a. Na začiatok je to solídny základ, na ktorom môžete postaviť slušnú aplikáciu a rozvíjať jej možnosti.

Panel nástrojov

Alebo aj UIToolbar, sa používa, keď chcete aplikáciu logicky rozdeliť do viacerých, nazvyme to sekcií, ktoré medzi sebou nezanárajú dáta.
UIToolbar
Dalo by sa povedať, že jednotlivé pohľady sú si rovnocenné, čo sa týka hierarchie.

Zachytávanie fotiek/videa skrze aplikáciu

Zachytávanie fotografií vašou aplikáciou je len pár riadkov (maximálne 20) na jednoduché implementovanie. Zachytávanie videa vyžaduje rovnako málo námahy. Týmto spôsobom získate všetky dáta o obrázku, aké si len viete predstaviť, s ktorými si môžete robiť, čo len chcete. Napríklad ich ukladať do CoreData na neskoršie použitie.

Geo lokácia

Chcete vedieť, kde sa práve nachádzate? Blog MobileOrchard.com popisuje, ako implementovať CoreLocation, nástroja na zisťovanie polohy. Okrem aktuálnej polohy môžete zistiť aj smer pohybu, dátum, rýchlosť, odchýlku, … Pre začiatočníkov výborná ukážka, ako na geo lokáciu vo vašej aplikácii. Dát získaných týmto nástrojom je toľko, že sa dajú použiť naozaj so širokým záberom. Jedným z najčastejších použití neskôr bude mapa, na ktorej sa dáta budú zobrazovať.

Ako vidno aj v tejto ukážke, je to znovu len pár riadkov kódu.

Ku CoreLocation som našiel aj tutoriál na Vellios.com, ktorý som si taktiež vyskúšal. Syntézou poznatkov som ich oba použil vo svojej tretej aplikácii.

Oficiálny návod pre vývojárov od Apple hovorí, že na simulátore by sa mali v CoreLocation zobraziť vždy súradnice sídla firmy Apple. Mne to však nefungovalo, preto som tento nástroj vedel vyskúšať až na reálnom zariadení.

Nahrávanie zvuku

Chcete nahrať zvuk do vašej aplikácie? Na blogu iPhone Application Mindshare toto popisujú veľmi stručne a funkčne. Stačí raz vyskúšať, pozrieť do kódu a všetko je jasné. Ešte treba pripomenúť, že výstup zvuku sa dá prepnúť na dva výstupy. Odporúčam preto, ak chcete zvuk prehrávať, zapnúť výstup na reproduktory na dolnej hrane iPhone. Ja som to najprv riešil zvyšovaním hlasitosti nahrávania, čo robilo poriadny šum, až som prišiel na to, že stačí prepnúť výstup.

Pokročilá práca s obrázkami

Ak to myslíte s obrázkami vážne, tak tento návod vám vysvetlí, ako to skutočne je s alfa kanálom, zmenšovaním, orezávaním, kvalitou, …
Teda, nejde až tak do hĺbky v článku (v kódoch áno), ale povie, na čo všetko je pri zmene veľkosti obrázku a jeho orezávaní treba myslieť.

Rozširovanie tried

S rozširovaním tried sa stretnete, keď budete chcieť vlastnou metódou prepísať už existujúcu na spracovanie istej časti aplikácie. Napríklad chcete farebný navigačný panel alebo farebný panel nástrojov, alebo čokoľvek iné.

Rozríšenie tried

Rozríšenie tried

Ako nahrať aplikáciu do AppStore použitím XCode 4

Bol som, priznám sa, trochu zmätený, keď som chcel na pamäťové úniky otestovanú (a odladenú) aplikáciu nahrať do App Store cez XCode 4. Zmeny oproti XCode 3 boli veľké, veľmi dobré a premyslené, no musel som sa zorientovať. Pomohol mi pri tom tento zdroj. Samozrejme treba myslieť ešte aj na Verizon verziu iPhone, ktorá beží na nižšej verzii iOS, preto ako rozsah pre aplikáciu treba vybrať iOS nižší, ako aktuálny. Ja som zvolil 3.0 a všetko je v poriadku.

iOS Deployment Target
Ako som sa dozvedel, že to tak je? V iTunesConnect účte, kde sú detaily o aplikácii vypísalo hlášku, ktorá hovorila o tom, že nahratý súbor nemusí byť kompatibilný s Verizon verziou. Tak som pátral a našiel. Na fóre dostupnom len vývojárom sa o tom diskutuje.

Mám problém nahrať aplikáciu cez XCode 4 (v 3-ojke to šlo)

Na oficiálnom vývojárskom fóre sa taktiež hovorí o riešení problému s nahrávaním aplikácie do App Store cez XCode 4, ak ste predtým nemali problém nahrať cez XCode 3.

Chybové hlásenie zobrazuje: com.apple.transporter.util.StreamUtil.readBytes(Ljava/io/InputStream;)[B.

Riešenie je jednoduché. Odinštalovať všetky vývojárske nástroje XCode príkazom sudo /Developer/Library/uninstall-devtools -mode=all. Následne nainštalovať poslednú verziu XCode 4 a všetko pôjde v poriadku. Teda mne to pomohlo, okrem iných, tiež.

Na dnes ďakujem za pozornosť.

Peter Druska Peter Druska

Vyše 13 rokov som robil CSS/HTML šablóny webových sídiel ako Pokec.sk, Azet.sk a iných. Robil som vlastné iOS appky, neskôr som prešiel programovať najskôr do Starbug.eu, neskôr do Inloop.eu. Pomedzi to som učil chvíľu na gymnáziu, no odišiel som, pretože som bol myslením nekompatibilný. Po inloope som prešiel do firmy become.sk, kde mám za úlohu vybudovať oddelenie mobilného vývoja. Tomu sa teraz venujem naplno, popri tom robím aj vývoj pre iOS. Tu sme založili značku Bedots.eu.


Hodnoť článok:
0 0

2 komentáre k článku:

Komentovať môžu iba prihlásení

Zaregistruj sa cez bezplatnú registráciu alebo použi login cez Facebook (FB Connect)

Prihlás sa tu, ak už máš profil na Zajtra.sk:


Zabudol som heslo

0 0 Tomáš Filčák (fb) 26.5.2011 00:00:00
Ako to momentalne vyzera s predajnostou Vasich v clankoch opisanych aplikacii?? Drzim palce... ;)
0 0 Lukáš Petr (fb) 13.5.2011 00:00:00
Máte tam chybku, u geo lokace má být CoreLocation, ne CoreData. Jinak je to super článek, hodně informativní.
Zajtra.sk > Programovanie > iOS > iOS vývojára príhody a skúsenosti (8) - užitočné tipy


Kritika

Vieš ako robiť veci lepšie? Pomôž našim odvážnejším členom a skritizuj im projekty!

Reklama

Seriály zo Zajtra.sk

Reklama