Hasonlóságok és különbségek iOS és Andorid appok készítésekor

NZsolt 2012.11.14. 22:24 iPhone 1 db 1 881

Amikor mobiltelefonos alkalmazást készít valaki, legtöbbször az iOS vagy az Androidos felületre koncentrálva fejleszti azt, méghozzá azért, mert ez a két rendszer „uralja” a mobilpiac 90%-át (Android 47%, iOS 43%). Ez az arány persze nincs kőbe vésve, hiszen mindkét csapat folyamatosan fejleszti a rendszerét, de abban bizonyosak lehetünk, hogy aki alkalmazást készít, az legjobb, ha ezzel a két felülettel számol hosszú távon.

Itt megjelenik az a probléma, hogy két különböző operációs rendszerre hogy lehet egy alkalmazást úgy fejleszteni, hogy az ne térjen el nagyban egymástól, és mégis, megőrizze a különböző rendszerekre jellemző sajátosságokat. Az egyik legnagyobb kihívás, hogy mind a kettő esetében a beépített alkalmazásokat (naptár stb.) úgy kell kialakítani, hogy azok funkciója ugyan az legyen, mégis, a dizájnnak különböznie kell egy iOS vagy egy Android rendszeren.

A másik, szintén kemény dió, hogy míg az iOS esetében általában jóval szigorúbb feltételekkel találkoznak a fejlesztők ( hogy az UI (felhasználói interfész) alkotóelemei hogyan nézzenek ki, hogyan viselkedjenek. Android esetén csak ajánlásokkal találkoznak. Emiatt fontos, hogy alkalmazás készítésekor tisztában legyünk az iOS és az Android alkalmazások legfőbb hasonlóságaival, illetve különbségeivel.

Hasonlóságok a beépített alkalmazások tekintetében

Az alkalmazás felépítése: Az információ áramlásának alapvető módja nem szokott különbözni az iOS és az Androidos platformon, nagyon ritkán szükséges egyedi struktúrát kialakítani.

Lista alapú navigáció: Mindkét platformon a task-based (feladat alapú) alkalmazások legtöbbje egy hierarchikus, fa alakú szerkezetre épül. A felhasználó ezen a „fán” haladva jut el az alkalmazás különböző rétegeibe, különböző listák segítségével. Az alkalmazás különböző szintjein az interakciós minták eltérhetnek ugyan, de az alapötlet, hogy egy hierarchikus rendszeren keresztül működjön a navigálás, mindkét esetben megegyezik.
’Wayfinding”:  A Wayfinding kifejezés azt takarja, hogy a felhasználó hogyan tudja magát kiismerni az alkalmazás különböző rétegeiben, illetve hogy tudja navigálni magát. Mind az iOS, mind az Android esetében a képernyőn feliratok segítik a tájékozódást, hogy éppen hol jár most a felhasználó, hogy honnan jött, illetve, hogy a következő lépéssel hová fog kerülni.

Bizonyos elvárható funkciók alapvető elemeknél: A felhasználói interfész bizonyos alapelemeinek előre elvárható módon kell működnie. Ilyen például a szövegdoboz, a különböző kapcsolók, tabok, checkbox-ok és gombok, melyek funkciója megegyező az iOS és az Android felületen is.

Mozdulatok: Az olyan mozdulatok, mint a tap (érintés), drag (húzás), flick (pöccintés), swipe (lehúzás) mindkét operációs rendszer esetében azonos funkciót látnak el, kivéve talán a „tap and hold” (érint és lenyomva tart), ami az Android rendszerben használatos inkább, és a különböző opciók felfedésére szokták használni.

Alapvető különbségek

Képernyőméret és felbontás: Az iOS telefonok egy képernyőméretben érkeznek, illetve kétféle felbontással, míg az Androidos készülékeknek három általánosított mérete, és három általánosított felbontása lehet. Az alkalmazás fejlesztésénél ezt figyelembe kell venni.

A „vissza” gomb:  Míg az iOS eszközöknél a bal felső sarokban található gombbal lehet visszafelé haladni az alkalmazásban, addig az Android esetében lehet „fel” és „vissza” is haladni. A „fel” az Android 3.0+ eszközökre lett kifejlesztve, hardware nélkül, és a programon belül navigál visszafelé, míg a „Vissza” egy létező gomb a készüléken, és nem csak a programon belül használható.

Tabok elhelyezése: A tabok a navigációt segítik az egyes alkalmazásokon belül. Az iOS alkalmazásokban a tabok alul találhatóak egy sávban, Androidnál viszont az alkalmazás tetején foglalnak helyet. Az iOS-nál egyszerre csak 5 tab jelenhet meg, míg Androidnál ennél több, a képernyőn „túlcsúszva” is.

Adatok „szortírozása”: Az iOS tipikusan az alsó sorba helyezi az akciógombokat (segmented control bar), így variálható az adatok megjelenítése (például zenéknél előadó/album/számcím). Az Androidos alkalmazások egy ún. „Spinner” segítségével egy drop-down menüt aktiválnak, ahonnan kiválaszthatjuk az elérhető opciókat. A menü általában az alkalmazás tetejéről hívható elő.

Tevékenység kiválasztása: Az iOS egy ún. „action sheet”-et használ, ha több opció is elérhető valamihez. Alulról bukkan fel. (Például egy egyszerű eset nézve: megnyomjuk a törlés gombot, majd felbukkan az action sheet két opcióval: ok/cancel). Az Androidos készülékeknél pop-up jellegű párbeszédpanel ugrik fel, és úgynevezett „radio button” – ok segítségével választhatjuk ki a megfelelő opciót.

Szövegbe rejtett opciók: iOS esetében vagy az alkalmazás jobb felső részében található gombra bökve egy akciógombokat is tartalmazó toolbar jelenik meg, melyből kiválaszthatjuk a nekünk megfelelő opciót, vagy az interfészen található gombok segítségével tehetjük ugyanezt. Androidnál javallott, hogy az alkalmazás tetején legyen egy akciógombokat tartalmazó sor. Ha többet akarunk megjeleníteni, mint amennyi elfér a kijelzőn és nincs „kézzel fogható” menü gomb a készüléken, akkor egy olyan akciógombot kell betenni, mely mutatja, hogy van még elérhető opció. Ahol van, ott a „menü” gomb segítségével is megjeleníthetjük a további lehetőségeket.

Keresés: iOS esetén a sztenderd az, hogy a keresőmező a képernyő felső részén helyezkedik el (amennyiben van opció a keresésre). Az Andorid esetében több különböző megközelítés is létezik. Az egyik ilyen az iOS-hoz hasonló, a képernyő tetején található keresőmező, ám ez addig nem bukkan elő teljesen, amíg rá nem bökünk a kereső akciógombjára. Android 3.0+ esetében alternatíva a „search widget”, ami lehetővé teszi, hogy bárhová elhelyezzük a keresőmezőt az alkalmazás felületén, tipikusan az alkalmazás akciógombjait tartalmazó sorban, az alkalmazás tetején.

A legfontosabb, hogy belevéssük a fejünkbe, ha mindkét operációs rendszerre el akarjuk készíteni az alkalmazást: a két rendszer interfészének elemei és design-ja is eltérő, ezért nem lehet két legyet ütni egy csapásra. Az alkalmazásnak meg kell felelni a különböző platformra megkövetelt külsőnek és persze az elvárásoknak, amit a felhasználók támasztanak az applikációval szemben.

Tetszett a bejegyzés? Lájkold, csiripeld, oszd meg!

A szerző

21 éves egyetemista, a technika messzebbi oldaláról. Kedveli az áram nélkül is működő dolgokat.

Hozzászólások száma: 1 db

  1. Idioty - 2012.11.17. 08:52

    Tetszett ez a cikk, hasznos volt, köszönöm!
    Azonban szerintem nem fontos, hogy minden elemet úgy csináljuk meg, ahogy általában készítik a fejlesztők. (Tudom, ez inkább a felhasználók életet könnyíti meg.) Lehet egyedi kinézetet, működést kitalálni, ami mindkét rendszeren ugyanúgy működik.

Szólj hozzá Te is!