© 2013 All rights reserved.
10

iOS app: Hrady a zámky České republiky a proč jsem si to udělal sám?

…udělal jsem aplikaci, dal jí do AppStore, můžete ji používat, nemusíte za ji platit, nemám z toho žádný přínos ani zisk (jenom ten morální). Proč? Poprvé jsem si to udělal sám a sám si to sice neumím udělat nejlíp, ale sám si to umím udělat podle svých představ.

 

Proč??

 

Tak určitě!! Nakonec se ukázalo že to bylo fajn.
Cílem bylo se dokopat konečně k tomu, abych udělal nějakou vlastní osobní?, nekomerční, aplikaci. Aplikaci, kterou udělám s radostí z toho, že ji budu sám používat nesmažu ji tři dny po nainstalování. Aplikaci, u které nemusím dodržovat žádné zadání. Aplikaci, kde nemusím implementovat navržený design. Aplikace, která které nemusí projít testováním a laděním, než bude publikována, Aplikace, která bude udělána za několik večerů. Aplikace, kterou nebude třeba optimalizovat pro historické iOS 4.3. Aplikace, která mě bude bavit. Aplikaci, kde se nemusím nikomu zodpovídat za nefunkčnost. Aplikaci ….

 

whydoit

 

Nápad?? večer první

 

Jasně chce to dobrý nápad! Něco co bude zajímavé nejenom pro mě, ale i pro lidi v mém okolí. Něco za co mi lidi budou líbat? ruce a něco co budu mít vytesaný na náhrobku
Jak je to vždycky, nápad je to nejtěžší, potřeboval jsem nápad, který:

 

  • 1. bude zpracovaný za týden po večerech (hodinka denně) – než mě to přestane bavit
  • 2. nebude závislý na datech (nemám žádná data, která bych použil)
  • 3. bude mě bavit (chci to dělat pro relax a dobré svědomí)
  • 4. bude se týkat cestování (osobní důvod)

 

Nápad mě napad vcelku rychle a docela se mi líbil. V rychlosti jsem prozkoumal konkurenci a zjistil že je minimální, takže deal.

Druhý bod jsem nesplnil. Původně jsem chtěl aplikaci, která bude spíše služba, než nějaká studnice informací, ale “vono se to poddá”.

idea

 

Kde vzít data?? / večer druhý

 

Tak “vomrknu” internet
Kouknul jsem na internet a googlil, a googlil. Našel jsem několik serverů, které obsahují spousty informací a mají fakt super databáze (závist), ale nakonec mě odradilo to, že bych s některým z těch serverů musel spolupracovat (zřejmě by aplikace na tento server musela odkazovat a už by vlastně nebyla jenom moje).

Wikipedia se nakonec ukázala jako studnice moudrosti a vševědění. Data jsem vzal odsud (prej se to může, když se uvede zdroj). Tímto ještě jednou děkuji autorům, kteří tuto databázi udržují.

 

Data jsem stáhnul tak, že jsem si napsal jednoduchý parser (a pak jsem objevil Wiki api), který se tam prostě connectnul a kradl a stahoval, stahoval všechno včetně obrázků (super na wikině je to, že si můžete sami v requestu zvolit jak velký obrázek chcete dostat, i když to neplatilo vždycky, jak se nakonec ukázalo).

Takže to šlo rychle a jednoduše. Data jsem nacpal do sqlite databáze. Rychle několika dotazy očistil od redundantních informací jako odkazů v detailu článků, externími odkazy atp.

 

Deme to naprogramovat / další 3 večery

 

Nejsem grafik, ale nějaký ten design zvládnu
Naprogramovat se neukázalo jako problém, problém se ukázalo to, co jsem bral prvně jako přednost a pozitivum, a to že nemám navržený design aplikace a že si to udělám podle sebe (mám přece grafické cítění a mám obecnou představu).

castles

Původně jsem si říkal že to střelím od boku, použiju standartní grafické prvky pro iOS7 a nebudu mít co řešit, ale takto to nefunguje. Namísto programování jsem neustále upravoval barvy, rozměry, velikosti fontů, … vždyť takovej programátor ani neví kde vzít nějakou ikonu. Google něco najde, ale můžu to použít? Příště si nechám udělat grafický návrh.

 

“trochu přeháním, ale tak nějak to bylo”

 

Design jsem nakonec nějak udělal, sice na něj nejsem hrdý, ale na víc jsem se nezmohl.

 

Kam s daty??

 

Local storage (sqlite, xml, ??), online storage (udělat k tomu webovej server?)??

Původně jsem chtěl k aplikaci udělat jednoduchý webový server, který bude data s aplikací sdílet, ale vzpoměl jsem si jak jsem nedávno lezl lesem k nějaké zřícenině a nebyl tam ani Edge takže pro mnou vysněného typického uživatele mé aplikace naprd, proto jsem se nakonec rozhodl že to dám lokálně přímo do aplikace. Aplikace bude větší, hlavně kvůli obrázkům, ale bude fungovat offline (krom mapy), což nakonec beru jako plus.

 

Šlo to vcelku rychle!!

 

Nakonec jsem to stihnul celkem rychle, a kdybych si nechal udělat design aplikace, tak bych to měl za polovic. Ale bavilo mě to. Těch pár dnů jsem to bral jako relax před spaním.

Otestoval jsem to na svám iPhone, chvilku koketoval s myšlenkou že bych to testnul na iPadu a tím pádem to musel upravit, rychle jsem to prokliknul v simulatoru na všem co jsem měl aktuálně v xCode nainstalovaný, nikde to nespadlo. Vygeneroval jsem si k tomu certifkát a šoupnul to ke schvaleni.

itunes

 

Výsledek!!

 

Fajn pocit udělat něco, něco, mno něco pro lidi
Výsledek si můžete prohlídnout v AppStore. Aplikace zobrazuje české hrady, zámky a zříceniny, po spuštění zobrazí všechny objekty (sám jsem byl překvapený co je v mém okolí) seřazené podle vzdálenosti od uživatele, je možnost si zobrazit detail, objekty na mapě, navigovat se k objektu, přidat do oblíbených, ….

 

ioshrady

 

Další verze??

 

Hned po odeslání apky jsem našel pár chyb, nic zásadního, ale měl jsem to více proklikat, než se unáhlit a hned to publikovat.

Jak je napsáno v perexu článku, z aplikace nemám žádná osobní přínos, ale i tak jsem rozhodnutý, že budou ještě dvě nové verze:

 

  • 1.1 – budou opraveny drobné chyby, budou odstraněny některé objekty, které tam nemají co dělat, na detail objektu přidám mapu, budou opraveny texty, budou opraveny lokace, bude přidáno dalších několik stovek hradů a zámků. Tímto databázi nebudu zřejmě rozširovat, ale pouze udržovat aktuální. Splněno a odeslano do appstore, prozatim nepublikovano
  • 1.2 – bude obsahovat vyhledání objektu, pokud by někomu nestačila mapa + nějaká možnost filtrování (navštívené objekty, atp.)
  • 1.3 – v případě že bude zájem, tak to možná vydám pro iPad a zpracuji nějaké poznámky uživatelů.

 

Očekávání

 

Nic moc si z toho neslibuju, budu rád za pár stovek stažení. Čekám pár negativních komentářů o tom, že aplikace funguje pomalu, nebo nefunguje vůbec, … ale to překousnu.

Comments are closed for this page

Lukas

Stahnu, nainstaluju, pustim .. dlouho se to nacita a pak to opakovane padne.. Skoda docela jsem se tesil, asi to nema rado moji 4S 🙁

    Taky mi to při spuštění na 4S haprovalo. Zůstal tam viset ten splash do doby, než jsem to shodil a pak to po mně žádalo přístup k poloze, pak se to rozjelo.

Hezký a užitečný! Jen ta vizuální stránka mi trochu rve oči, hlavně barva buttonů v detailu nebo non-retina assety…

admin

Diky za reakce. Opravim ve verzi 1.2.
Nyni jde do AppStore verze 1.1, ktera doplnuje funkcnost, verze 1.2 bude opravovat chyby.
Bohuzel jsem nemel moc naladu a cas na testovani aplikace.

Stalo se mi něco podobného. Pro Android prostě nebyla periodická soustava prvků, která by se mi líbila. Tak jsem si musel napsat svojí.

Lukas

Nevim jestli to bude uzitecna informace, ale podarilo se mi “odstranit” problem s padanim app. Mam defaultne omezeny pristup k polohovym sluzbam (omezeni->polohove sluzby – zakazat zmeny) a po rucnim povoleni appka uz beha normalne.

admin

Ano, diky za podmet, zapracuji to v dalsi verzi.
Aplikace nativne po spusteni nacita objekty dle vzdalenosti, jak jsem psal, moc jsem netestoval, takze opravim.

Super. Dík za článek. 🙂

Lada

Je v appstore anebo proc delete?

Trackbacks for this post

  1. iOS app: Hrady a zámky České...
About
Hi, i am programmer from the Czech Republic. I love web development (Ruby, Ruby on Rails, PHP, Nette) and iOS development (Objective-C, Cocoa).
To cooperate, here is my phone:
+420 608 836