• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Kpi 207941
 

Kpi 207941

on

  • 214 views

 

Statistics

Views

Total Views
214
Views on SlideShare
214
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Kpi 207941 Kpi 207941 Document Transcript

    • Kristína Králiková V Brne 5.1.2013 Špecifiká vývoja pre mobilné zariadeniaAnotácia: Obsahom tohto textu je zhrnutie zásad vývoja aplikácií pre mobilné zariadenia.Kľúčové slová: Android, iOS, natívna aplikícia, chytrý telefón
    • Pri vývoji natívnej aplikácie určenej pre mobilné zariadenia je dôležité zoznámiť sa s cieľovým zariadením aporozumieť jeho hardvéru. Zatiaľ čo operačný systém iOS beží iba na niekoľkých druhoch zariadení(iPhone,iPhone3G, iPhone3GS, iPhone4, iPhone4S a iPhone5), je v prípade Androidu situácia zložitejšia. Zariadení stýmto operačným systémom existujú desiatky. Hlavné aspekty, ktoré treba brať do úvahy sú hlavne:obmedzený výpočetný výkon, rôznorodosť hardvéru a obmedzená veľkosť pamäte.Obmedzená pamäť, výpočetný výkon a výdrž batériePri vytváraní aplikácií náročných na výpočetný výkon, je potrebné navrhovať efektívne algoritmy, abyaplikácia zbytočne nevyťažovala procesor a neuberala výdrž batérie. Do úvahy treba brať aj fakt, že tietozariadenia majú obmedzenú veľkosť internej a externej pamäte a aplikácia s veľkým objemom dát sa na nenemusí zmestiť. Aplikácie by nemali presahovať veľkosť v ráde jednotiek MB.Rôznorodosť hardvéruV prípade systému Android sa nejedná o zariadenia od jedného výrobcu. Z toho dôvodu je potrebné počítať sveľkou diverzitou použitého hardvéru. Nemusí nás zaujímať konkrétny model ale je treba uvedomiť si, ženiektoré zariadenia napríklad neobsahujú fotoaparát, nemajú možnosť rozšírenia pamäte pomocou SD karty,nemajú gyroskop alebo Bluetooth.Rôzne spôsoby ovládaniaŠpecifickou črtou zariadenia iPhone je existencia iba jedného hardvérového navigačného tlačítka, ktoré májedinú funkciu - a tou je zobrazenie domovskej obrazovky. Všetky ostatné úkony sú realizované pomocouviacdotykových gest. S týmto faktom treba pri návrhu aplikácie počítať a ponúknuť užívateľovi alternatívnyspôsob navigácie medzi pohľadmi aplikácie buď definovaním gest alebo pridaním navigačnej lišty. Chytrételefóny s Androidom majú štandardne viacero navigačných kláves, takže nie je potrebné vytváraťalternatívne spôsoby navigácie v hierarchií obrazoviek.Rôzne parametre obrazovkyNeoddeliteľnou súčasťou každej mobilnej aplikácie je grafické užívateľské rozhranie. To tvorí prostredníkamedzi aplikáciou a užívateľom. Nielen že tvorí prezentačnú vrstvu, v zmysle prijímania užívateľomzadaných vstupov a prezentácie dát, ale zároveň je tvárou celej aplikácie.Podceňovaním správnych zásad tvorby užívateľského rozhrania môžeme degradovať aplikáciu natoľko, žebude pre užívateľ nepoužiteľná. Popri zásadách použiteľnosti, prístupnosti a grafického dizajnu nesmiemezabúdať na to, čo už bolo vyššie v texte niekoľkokrát spomenuté. A to, že aplikácia, ktorú vytvárame budezobrazovaná na rôznych zariadeniach, pričom každé z týchto zariadením má rozdielnu veľkosť obrazovky,hustotu pixelov, či rozlíšenie. Android automaticky prispôsobuje veľkosti bitmapovej grafiky tak, aby sa vykresľovalav závislosti na fyzickej veľkosti aktuálnej obrazovky. Ak aplikácia obsahuje zdrojovú grafiku iba pre jednutriedu hustoty obrazovky, systém automaticky obrázky zväčší alebo zmenší podľa toho, či má obrazovkavyššiu alebo nižšiu hustotu ako uvádza táto trieda. Android ponúka celkovo štyri triedy obrazoviek. Presprávne zobrazenie grafiky pri každej hustote je nutné poskytnúť alternatívne verzie pre každú triedu. Prešpecifikovanie do ktorej triedy daná grafika patrí, sa používajú označenia ldpi (nízka), mdpi (stredná), hdpi(vysoká), a xhdpi (extra vysoká). Ďalšou z techník je poskytnutie rôznych rozložení pre rozdielne veľkosti obrazoviek.Táto technika sa označuje ako Responsive dizajn a používa sa v prípadoch, keď je vhodné upraviť rozloženieprvkov aplikácie a využiť tak buď dodatočné biele miesto alebo naopak vtesnať prvky na obrazovku.Android ponúka možnosť využiť rôzne zdroje grafiky. Tieto zdroje sa od seba odlišujú príponou small,normal, large, xlarge - zdrojová zložka v tomto prípade má názov napríklad layout-small. Tretím spôsobom, ako zabezpečiť, aby sa aplikácia zobrazovala správne, je deklaráciarozmerov obrazovky, ktoré aplikácia podporuje. Toto prehlásenie sa robí v súbore AndroidManifest.xmlpomocou elementu <supports-screens>. Zabezpečí, že len zariadenias požadovanou veľkosťou obrazovky budú mať povolené stiahnuť túto aplikáciu. Odlišná situácia nastáva v prípade iOS zariadení. Na rozdiel od Androidu, ktorý z dôvodu množstvarozdielnych zariadení musí disponovať efektívnym nástrojom pre podporu rôznych obrazoviek, iOS takýtonástroj nemá a ani ho nepotrebuje. Väčšina zariadení disponuje displejom HVGA s rozlíšením 320x480 px ahustotou 163 ppi. Ostatné zariadenia majú takzvaný Retina displej, ktorý ponúka dvojnásobnú hustotu. Abysa grafika zobrazovala riadne na oboch typoch displejov, môžeme použiť dve techniky ako toho dosiahnuť.Prvá spočíva v tom, že vytvoríme grafiku vhodnú pre displej s vyšším rozlíšením a pri zobrazovaní na
    • menšom displeji ju programovo zmenšíme. Druhým riešením je vytvorenie dvoch verzií grafiky – pre obadruhy displejov (obdobne ako pri Androide). Aplikácia bude mať k dispozícií dve sady obrázkov, pre každýdruh obrazovky jeden. Táto technika však zatiaľ nie je všeobecne použiteľná, nakoľko funguje iba v iPhoneale pre iPad a iPod sa nedá použiť. Vzhľadom na trend zvyšovanie rozlíšenia a hustoty displejov sa však dáočakávať, že Apple čoskoro implementuje túto funkciu aj do ostatných zariadení. Podiel veľkostí obrazoviek chytrých telefónov 320x480 768x1024 1280x800 1280x1024 1600x900320x480 11,40%768x1024 15,3%1280x800 19,5%1280x1024 6,5%1600x900 3,8%
    • Literatura[1] Rogers, Rick. Android Application Development: Programming with the Google SDK. O’Reilly Media,2009. ISBN 978-0596521479[2] Mudge, JT. Native App vs. Mobile Web App: A Quick Comparison [Online]. Posledná revízia11.7.2011 [cit. 2012-01-06] Dostupné z:<http://sixrevisions.com/mobile/native-app-vs-mobile-web-app-comparison/>[3] Charland Andre, Leroux Brian, Mobile application development: web vs. Native. Communications of theACM. Communications of the ACM, May 2011, vol. 54, no. 5, s. 49–53.Dôvody pre použitie hore uvedenej literatúry[1]  táto kniha vychádza v edícií vydaveteľstva O’Reilly Media, ktoré má v oblasti informatiky dobrú reputáciu  kniha je síce vydaná pred viac ako tromi rokmi, ale problematika, ktorú som v článku rozoberala sa príliš nezmenila, takže tento zdroj stále prináša relevantné informácie  v knihe je problematika programovanai mobilných aplikácií popísaná do hĺbky  autor píše nezaujatým štýlom, s cieľom predať objektívne infomácie a postupy čitateľovi  autor je v danej oblasti známy a uznávaný[2]  autor v článku popisuje na príklade rozdiely medzi webovými a natívnymi aplikáciami, čím poskytuje širší pohľad na mnou popisovanú tému  autor je v oblasti vývoja aplikácií známy a má dlhoročné skúsenosti  článok je relatívne nový, za rok a pol sa v oblati mobilných zariadení neudialy zásadné zmeny, môžeme ho teda považovať za aktuálny  text článku je zrozumiteľný a obsahuje prehľadné tebuľky a obrázky  informácie sú podané objektívne[3]  článok je publikovaný v uznávanom magazíne v oblasti informačno-komunikačných technológií  Andre Charland je uznávaným autorom a hlavným blogerom vydaveteľstva O’Reilly Media  článok je napísaný zrozumiteľne a odborne  problematiku pokrýva do hĺbky  informácie sú v texte podané objektívne, bez subjektívnych pripomienokArgumentaceChytré mobilné telefóny sú v dnešnej dobe nedielnou súčasťou nášich životov. Kto vlastní chytrý telefón,ten má určite skúsenosti s niektorou z natívnych aplikácií, ktorých sú k dispozícií tisíce. Túto tému som sivybrala z toho dôvodou, pretože si myslím, že by mohla byť zaujímavá nie len pre ľudí z oboru informatikyale aj pre širšiu verejnosť. Táto práca je súčasťou mojej diplomovej práce a venuje sa popisu špecifík vývojapre mobilné platformy.