Logo sl.androidermagazine.com
Logo sl.androidermagazine.com

Spopadanje z "razdrobljenostjo": razvijalci se oglasijo na podpori več zaslonov

Kazalo:

Anonim

Android deluje na različnih napravah, kar pomeni, da deluje tudi na različnih velikostih in ločljivosti zaslona. Veliko ljudi temu reče "razdrobljenost." Ne pozabite na dejstvo, da že leta na svojem namizju uporabljajo izdelke, zasnovane in razvite na enak način. Očitno če vse ni povsem enako, dobi oznako "razdrobljenost".

Ob težavah, ki nastanejo pri uporabi zaslonov različnih velikosti in gostote, obstajajo različni načini. Apple ima ločene sezname za aplikacije, zasnovane za iPhone v primerjavi z iPadom. Microsoft ustvari nov ekosistem za svoje naprave z velikim zaslonom. Android razvijalcem omogoča način, da enaka aplikacija deluje drugače na različnih zaslonih. Vsaka metoda je dobra in slaba, vendar se bomo tukaj osredotočili na Android.

V Androidu lahko aplikacije prilagodijo postavitev zaslonov različnih velikosti in tudi ločljivosti. Vse to je vgrajeno, vendar je nekaj stvari, ki jih morajo razvijalci izjaviti v svoji kodi, da bi aplikacija izgledala dobro. Upoštevati je treba, kako bosta velikost in gostota zaslona spremenila videz aplikacije. Droid DNA ima zaslon z višjo ločljivostjo kot tablični računalnik Motorola XOOM, vendar ne želimo videti zaslona tablic za aplikacije na zaslonu velikosti telefona.

Razvijalec mora zagotoviti dovolj kakovostna sredstva (slike), da bodo videti visoko pri visoki ločljivosti (ne glede na noro visoko ločljivost) in pri oblikovanju svoje postavitve ne pozabite uporabiti neodvisnih slikovnih pik. To preprečuje, da so stvari, kot so gumbi in drugi elementi nadzora, resnično velike na zaslonih z majhno gostoto, kot je Galaxy S2, ali da so resnično majhne na zaslonih z visoko gostoto, kot je DNK.

Sliši se zapleteno, a večina teh stvari je narejena za vas pri kodiranju aplikacije. Vse, kar mora razvijalci, je pravilno dati izjave in zagotoviti ustrezna sredstva za podporo poljubne velikosti (fizične in ločljivosti) ali postavitve. Tudi več aplikacij za postavitev, kot je aplikacija Google+, uporabljajo isto kodo za pokritje vseh možnih zaslonov.

Tu ne poskušamo presojati razvijalcev. Pisanje aplikacij je težko. Razvijalci Androida vse to pridigajo že od izdaje Gingerbread, toda kako praktična je? O tem smo povprašali nekaj razvijalcev, ali poglejte, kaj so povedali po premoru.

Več: Googlova spletna stran za razvijalce Android.

Nekaj ​​razvijalcev (velikih in majhnih) smo postavili nekaj osnovnih vprašanj na to temo.

  • Kako težko se je držati smernic?
  • Na papirju je videti enostavno, a ali ste opazili kakšne posebne težave ali dele, ki jih Google ni pokril?
  • Kako je to vplivalo na čas in stroške razvoja, če sploh?
  • Še kaj o temi, ki jo želite deliti?

Vprašanja sem poskušal narediti čim bolj nevtralno, da se s tem ne bomo spuščali s pristranskostjo. Ko dvomite, vprašate ljudi, ki vedo, kajne? Naredil sem pravičen delež programiranja, a kodiranje v Javi in ​​izdelava aplikacij za Android se zelo razlikuje od pisanja kode v C ali strojni kodi ali celo Perlu. Obstajajo nianse, ki jih ne razumem, tudi če dobim splošne načine gradnje aplikacije.

Predstavljam si, da je lepo število vas takšnih, kot sem jaz, in ne poznate podrobnosti gradnje aplikacij za Android. Vidimo le, kaj pravijo razvijalci Androida, in to zveni enostavno. Za njih je najbrž tako - te stvari že od začetka pišejo od leta. Poglejmo, kaj lahko povedo ljudje, ki so jim lahko sledili.

Joe Simpson (@kennydude) - Boid

Joe je član Team Boid in tudi sam objavlja prijave. On (in preostala ekipa njegove ekipe) so odličen primer neodvisnih razvijalcev s strastjo za Android, ki so sprožili nekaj neverjetnih aplikacij.

Slediti smernicam je dokaj težko, še posebej, če želite vitko aplikacijo, vendar si ljudje želijo združljivosti z nazaj. Ena najbolj motečih stvari je videti, kako je nekaj videti na d.android.com/design, vendar ničesar o tem, kako to dejansko storiti.

Šibka točka je osvežujoča, če fizično ne morete uporabljati GCM zaradi Twitterja in ne želite uporabljati PtR. Tudi Googlove aplikacije sestavljajo svoje smernice. Vzemite za primer podokno z drsnimi ploščami, Google+ to počne drugače kot YouTube (čeprav vem, da bo podporna knjižnica to upala).

Prav tako lahko pridete do točke in ni dokumentacije o nečem (na primer EdgeEffect).

Sem študent, zato so stroški nekaj, na kar ne izgledam, in ja, potreben je čas, toda uporabniki vas bodo imeli radi. V bistvu so oddaje v živo (ADiA, klinika za aplikacije, ure urada) nujno (žal), čeprav ne morejo posredovati povratnih informacij o Googlovih aplikacijah.

Boid bo kmalu odprl kodo (ja!), Aplikacijo pa lahko najdete v Googlu Play. Tu boste našli tudi vse Joejeve aplikacije (tam je nekaj draguljev).

Christophe Versieux - BeTrains - SNCB Belgija; HoloEverywhere

Christophe je zgradil številne aplikacije za Android, vključno z BeTrains - SNCB Belguim - aplikacijo s čudovito postavitvijo, ki prikazuje, kaj je mogoče storiti z dobro vgrajeno aplikacijo. Čeprav ga večina v ZDA nikoli ne bo uporabljala (to je aplikacija urnika vlakov za belgijske tirnice), je vredno namestiti samo, da vidimo, kako dobro je to storjeno. Ljudje v zahodni Evropi zagotovo vedo za to.

Poleg tega je razvil HoloEverywhere, knjižnico, ki jo lahko uporabljajo drugi razvijalci za izdelavo aplikacij v slogu Holo za Android 2.1 in novejše. Ker številni telefoni še vedno uporabljajo medenjake, je to prava poslastica za razvijalce, ki želijo svoje aplikacije videti tekoče.

Sploh ni težko. Resno. Težaven del nastopi, ko stranka zahteva, da se umakne od teh smernic!

Spominjam se stranke, ki je hotela, da sem postavil jezičke na dno zaslona, ​​gumbe iPhone povsod, preklop v stilu iPhone in ta projekt je bil res težko doseči in res sem izgubil veliko časa in denarja na njem.

Bil sem res jezen nanj, ko je vprašal vse te neumnosti in je samo mislil, da sem len razvijalec.

Zdaj imam veliko stikov z njim in v celoti prepisujemo njegovo aplikacijo, ustvarjamo super kodo tako, da odstranimo vse te neuporabne funkcije in ustvarimo "čisto" aplikacijo za Android. Stranke in podjetja se morajo teh navodil samo zavedati, močno verjamem.

Knjižnice, kot so ActionBarSherlock, HoloEverywhere (moje ustvarjanje), UnifiedPreferences in SlidingMenu, so res preproste za uporabo in v nekaj vrsticah kode zagotavljajo izjemno uporabniško izkušnjo.

Čas in stroški, kot sem že dejal, sta zmanjšana z upoštevanjem Googlovih smernic. Fragmenti in mape postavitve so res preprosti za uporabo (in kar je še pomembneje za ponovno uporabo): aplikacija za tablični računalnik preprosto vzame delček kode iz postavitve telefona in ničesar ne smete znova napisati. Majhne spremembe v aplikaciji za telefon se takoj odražajo v aplikaciji za tablične računalnike, saj je uporabljen isti Fragment.

Skupnost ustvari nekaj neverjetnih projektov in ne vedno Google. Nekateri, zelo aktivni v storitvi Google+, kot so Roman Nurik (Google), Reto Meier (Google) Juhani Lehtimäki, Jake Wharton, Taylor Ling,.. (vedno se bojim, da bi pozabil pomembne ljudi), so zelo poučni. Razvijalci morajo samo vedeti, kje iskati, in razvoj Androida bo zanje enostaven!

BeTrains lahko najdete v Googlu Play in si želite ogledati HoloEverywhere, če vas zanima razvoj Android.

Matthew Runo - Zappos

V nasprotju z nekaterimi manjšimi neodvisnimi razvijalci, s katerimi smo se pogovarjali, smo slišali tudi od Matthewa pri Zapposu. Zappos je spletna maloprodajna korporacija in ima verjetno namenjen proračun za oblikovanje tako na svojem spletnem mestu kot tudi v njihovih aplikacijah. To je tudi podjetje, ki ga kupujem redno, vendar to ni imelo nobenega vpliva in Matthew se ni zavedal, da sem pogost kupec, ko se je prostovoljno prijavil.

V podjetju Zappos, ker smo prodajalec, se moramo v prvi vrsti držati lastne blagovne znamke. Čuden, zabaven in malo ob steni. Kljub temu smo oba prepričana v smernice za oblikovanje Android - in vse, kar počnemo v uporabniškem vmesniku, je vzeto iz duha teh pravil. Pred letom dni je bila naša aplikacija večinoma iOS vrata, kako je izgledala in delovala. Danes je (mislim, da) dragulj tega, kar lahko počnete v Androidu. Kadar je le mogoče, se držimo smernic in naši oblikovalci delujejo od njih kot izhodišče.

Smernice oblikovanja niso vse in na koncu - na koncu so le tam, da poskušajo spodbuditi oblikovanje androidnih aplikacij, da bodo bolj dosledne. Ugotovili smo, da je večina običajnih "novih" knjižnic odprtega koda, ki smo jih uporabili, končala kot del smernic (drsni meni, kruton).

Te smernice nikoli ne smejo biti zadržne. Nekatere stvari - celovita navigacija - morajo biti dosledne, tako da vaša aplikacija "samo deluje". Vse ostalo - začnite pri smernicah in zaženite s svojim dizajnom. Želimo, da je naša aplikacija NAŠA PRILOGA - zato ne moremo kar tako narediti osnovne teme holo.

Letos smo v bistvu začeli od temeljitega prepisa naše aplikacije za delo z drobci. V zadnjih 6 mesecih smo trdo delali, da smo dodali podporo za 7 "tablične računalnike, trenutno pa delamo na 10" podpori. Najtežje je testirati naprave, vendar imamo super ekipo QA, ki pri tem pomaga. Od avgusta ali približno tako imamo 2 osebi, ki delajo polni delovni čas v naši aplikaciji, pred tem pa je bila 1 polna oseba.

Spodnja točka je, mislim, da smernice za oblikovanje androidov pomagajo poenostaviti naš postopek - in s tem zmanjšati stroške. Sprijaznimo se, večina oblikovalcev iz iOS-a - tako da imamo velik vir virov, kot je design.android.com, čudovito pomoč, da se jih zažene v androidni ekosistem.

Lahko rečem, da Zapposove izbire oblikovanja delujejo dobro, moja žena pa ima omaro, polno oblačil, torbic in škornjev, ki krepijo mojo trditev. Oglejte si njihovo aplikacijo za Android iz Googla Play.

Josh Burton - jRemote

Josh je bil avtor številnih majhnih aplikacij za Android, njegova aplikacija jRemote (to je krmilnik za priljubljeni program za jDownloader PC) pa je odličen primer, kako s pomočjo postavitev ustvariti aplikacijo, ki je odlična tako na telefonu kot na tabličnem računalniku. Poveča uporabo zaslona naprave in daje informacije, ki jih iščete, točno, kako bi pričakovali.

Spoštovanje smernic oblikovanja je precej naravnost naprej, dokler se jih držite od začetka. Razvoj celotne aplikacije, nato pa se bo na koncu vrnil nazaj in poskušal implementirati fragmente / postavitve tablic itd., Bo škoda časa, truda in frustracij. Če pa načrtujete svojo aplikacijo, jo od samega začetka razvijate z uporabo drobcev in ustvarite svoje vire za vsa prava dpi vedra, se bo le-ta razvil brez težav in vam sploh ni treba porabiti veliko časa za razmišljanje o smernicah. In če se zataknete, so oblikovni dokumenti le en klik stran. So odličen vir.

Res me frustrira, da toliko naprav nima postavitev tabličnih računalnikov. Če je vaša aplikacija zgrajena na podlagi drobcev, lahko dodate postavitev tabličnega računalnika v 30 minutah. Iskreno, tako enostavno.

Mislim, da za veliko razvijalcev nimajo tabličnih naprav, na katerih bi lahko preizkušali, uporaba emulatorja pa je lahko bolečina. Toda pravkar izdana nova orodja ADT precej olajšajo. Pogled z več konfiguracijami v urejevalniku postavitve pomeni, da lahko vidite, kako izgleda vaša postavitev, na 5-6 različnih velikostih zaslona hkrati. In to hitro. Seveda boste na koncu morali še vedno testirati emulator / napravo, vendar to zagotovo pospeši potek dela.

jDownloader je priročen program za uporabo na namizju, jRemote pa izgleda kot čudovit način nadzora. Če nič drugega, ga prenesite iz Google Play in si oglejte, kako je aplikacija lahko preprosta in lepa hkrati.

Slišali smo od številnih drugih razvijalcev, ki v veliki meri govorijo iste stvari. Tukaj smo samo brez prostora, da jih naštejemo. Bistvo vsega je, da če načrtujete vnaprej, smernice za razvijalce za Android res delujejo v večini primerov. Veseli nas, da smo ga slišali in bomo še naprej uživali v odličnih aplikacijah in podpirali trdo delujoče razvijalce.