Top Banner
www.vincit.fi SEKAISIN MOBIILISTA Juha Riippi
38

Sekaisin mobiilista - Vincit Teatime 2014

Dec 07, 2014

Download

Technology

VincitOy

Kuvittele, että olet tilanteessa, jossa sinulla on mahtava tuote, mutta sinulla ei ole tarjota oikein mitään mobiilikäyttäjille. Pysähdyt hetkeksi miettimään vaihtoehtojasi:“Pitäisikö tehdä mobiiliwebbisivu? Vai kannattaisiko sittenkin toteuttaa natiivisovellus? Niitä pitäisi tehdä ainakin kolme, jotta saisin tuen kaikille suosituimmille alustoile. Entä hybridisovellukset tai jokin cross platform -työkalu? Eikös se säästäisi kustannuksissa, koska tarvitsisi tehdä vain yksi sovellus kaikille alustoille?”

Vincitillä olemme toteuttaneet mobiiliprojekteja lähes kaikille alustoille. Kerron mitä olemme oppineet ja millaisia ongelmia kohdanneet, jotta sinun ei tarvitse olla sekaisin mobiilista.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sekaisin mobiilista - Vincit Teatime 2014

www.vincit.fi

SEKAISIN MOBIILISTAJuha Riippi

Page 2: Sekaisin mobiilista - Vincit Teatime 2014

MITÄ LUVASSA?Fragmentaatio

Teknologiat Apuja valintoihin

�2

Page 3: Sekaisin mobiilista - Vincit Teatime 2014

Android 4.3 WebKit lähdekoodi toDataURL() funktio

Sama funktio Android 2.3.x lähdekoodissa

Page 4: Sekaisin mobiilista - Vincit Teatime 2014

FRAGMENTAATIOMitä se on ja miten se vaikeuttaa

mobiilisovellusten tekoa?

�4Kuva:  http://www.mactrast.com/2012/05/visualized-­‐the-­‐truth-­‐about-­‐android-­‐fragmentation/

Page 5: Sekaisin mobiilista - Vincit Teatime 2014

�5

MOBIILIALUSTAT, TOP3

Tilastojen  lähde:  http://gs.statcounter.com/

WP  22%

Alustojen suosio Suomessa

Eurooppa WP 3,6% Globaalisti: WP 2,2%

Android  38%

iOS  36%

Page 6: Sekaisin mobiilista - Vincit Teatime 2014

�6

MOBIILIALUSTAT, MUUT

Tilastojen  lähde:  http://gs.statcounter.com/

Page 7: Sekaisin mobiilista - Vincit Teatime 2014

�7

iOS

Näyttökoko  ja  resoluutio

iPads  vs    

iPhones

iPhonet  3.5”  ja  4”

Retina  vai    

ei-­‐retina

Kuvat:  http://david-­‐smith.org/iosversionstats/

iOS  Versiot

iOS7: iPhone 4 tai iPad2 ja uudemmat

Page 8: Sekaisin mobiilista - Vincit Teatime 2014

• Samat ongelmat kuin iOS:llä • Lisäksi eri valmistajia, mutta käytännössä Nokia/

Microsoft nykyään 100% • Merkittävin ero WP7 <-> WP8 eivät yhteensopivia – WP8 paljon uusia ominaisuuksia ja muutoksia – WP7 ei päivitettävissä – WP8 osuus 78,3% joulukuu 2013 – WP7 puhelimia ei enää valmisteta

• Tablettisovellukset Windows 8 / WinRT sovelluksia

�8

WP FRAGMENTAATIO

Page 9: Sekaisin mobiilista - Vincit Teatime 2014

�9

ANDROID: OS VERSIOT

• Päivitysten jakelu laitevalmistajilla: hitaat päivitykset • 4.x.x versioissa erot pieniä • Jos tuki pitää ulottaa 2.3.x versioihin, tulee enemmän

työtäKuva:    http://developer.android.com/about/dashboards/index.html?utm_source=ausdroid.net

Page 10: Sekaisin mobiilista - Vincit Teatime 2014

�10

ANDROID: NÄYTTÖKOOT

Kuva:    http://developer.android.com/about/dashboards/index.html?utm_source=ausdroid.net

• Laaja valikoima eri näyttökokoja • Graafikolle mahdollisesti työlästä

Page 11: Sekaisin mobiilista - Vincit Teatime 2014

�11

ANDROID: LAITTEET

Kuva:  http://www.idownloadblog.com/2013/07/30/the-­‐terrible-­‐state-­‐of-­‐android-­‐fragmentation/  

599 eri laitevalmistajaa 11 868 erilaista laitettaHeinäkuussa 2013:

Page 12: Sekaisin mobiilista - Vincit Teatime 2014

• Sovellus, joka tunnistaa puhelimen ollessa taskussa kävelyn, pyöräilyn, juoksun ja bussissa tai autossa matkustamisen

• Tehtiin Androidille, käytti Androidin rajapintoja liikkeen tunnistamiseen

• Ongelma: Sensorien toiminta laitevalmistajien päätettävissä • Mitä sensori tekee kun laitteen näyttö on pois päältä? • Osa laitteista sammutti sensorin, osa piti päällä,

pieni osa palautti jopa nolladataa • Millä taajuudella sensori palauttaa dataa? • Pyydettäessä 50 Hz, tuli vähän mitä sattuu ja usein ei

taajuus ei edes pysynyt vakiona

�12

CASE HOOKIE

Page 13: Sekaisin mobiilista - Vincit Teatime 2014

�13

Kokonaan  omat  versiot  Androidista

Ulkonäölliset  uudistukset

ANDROID: ERI VERSIOT

Pinnalliset räätälöinnit

Kokonaan omat versiot Androidista

Page 14: Sekaisin mobiilista - Vincit Teatime 2014

HALUAT KUITENKIN TEHDÄ MOBIILISOVELLUKSEN

Tässä tulee vaihtoehtoja miten

�14

Page 15: Sekaisin mobiilista - Vincit Teatime 2014

�15

NATIIVISOVELLUS

SDK  +  

Lähdekoodi

Natiivisovellus

SDK  +  

Lähdekoodi

Natiivisovellus

SDK  +  

Lähdekoodi

Natiivisovellus

Page 16: Sekaisin mobiilista - Vincit Teatime 2014

Natiivina  toteutettu  sovellusrunko

�16

HYBRIDISOVELLUS = HTML5

Natiivina  toteutettu  sovellusrunko

Webview

API  Bridge

Alustan  toiminnallisuus

HTML/CSS/Javascript

Page 17: Sekaisin mobiilista - Vincit Teatime 2014

�17

HYBRIDITEKNOLOGIAT, KAKSI ERITTÄIN YLEISTÄ

Page 18: Sekaisin mobiilista - Vincit Teatime 2014

�18

HYBRIDITEKNOLOGIAT, MUITA

Page 19: Sekaisin mobiilista - Vincit Teatime 2014

• Sovellus metsästyskoirien liikkeiden seuraamiseen puhelimella

• Android ja Web Client • Natiivisovellus kaikilta muilta osin, paitsi HTML5

kartat • Tavoite: yhteinen koodi webclientin kanssa • HTML-karttateknologiaksi OpenLayers

�19

HYBRIDISTÄ OPITTUA

Page 20: Sekaisin mobiilista - Vincit Teatime 2014

�20

HYBRIDISTÄ OPITTUA 2

Webview    kartat

Natiivina  tehty    sovellus-­‐logiikka

JSON

Page 21: Sekaisin mobiilista - Vincit Teatime 2014

• Protoile riskit • Kartat hybrideissä hankalia – Käyttökokemus huonompi kuin natiivi – Suorituskyky huonompi kuin natiivi

�21

HYBRIDISTÄ OPITTUA 3

Page 22: Sekaisin mobiilista - Vincit Teatime 2014

• Webclient toimii iPhonella hyvin

• Hyödyntää Androidiin tehtyä HTML-karttakoodia

�22

JOTAIN HYVÄÄKIN

Page 23: Sekaisin mobiilista - Vincit Teatime 2014

�23

RISTIKÄÄNNETYT SDKT

SDK  lähdekoodi

Kirjasto/  runtime

Natiivisovellus

Page 24: Sekaisin mobiilista - Vincit Teatime 2014

�24

RISTIKÄÄNNETYT VAIHTOEHDOT

Page 25: Sekaisin mobiilista - Vincit Teatime 2014

�25

RISTIKÄÄNNETYT VAIHTOEHDOT, PELEIHIN SUUNNATUT

Page 26: Sekaisin mobiilista - Vincit Teatime 2014

MIKÄ TEKNOLOGIA KANNATTAA VALITA?

Eri vaihtoehtojen hyviä ja huonoja puolia

�26

Page 27: Sekaisin mobiilista - Vincit Teatime 2014

�27

NATIIVISOVELLUS

Edut Haitat

• Look and Feel • Suorituskyky • Kaikki alustan

mahdollisuudet • Hyvät työkalut • Kartat ja muut

alustan APIt

• Kustannukset

Page 28: Sekaisin mobiilista - Vincit Teatime 2014

�28

HYBRIDISOVELLUS

Edut Haitat

• Kustannukset • Look and Feel

varauksin • Päivitysnopeus jos

pääsisältö palvelimelta

• Uutissovellukset ja mediasovellukset

• Suorituskyky • Työkalut • Teknologian valinta

Page 29: Sekaisin mobiilista - Vincit Teatime 2014

�29

RISTIKÄÄNNETTY SOVELLUS

Edut Haitat

• Suorituskyky • Kustannukset • Soveltuu etenkin

peleihin

• Look and Feel • Työkalut • Teknologian valinta

Page 30: Sekaisin mobiilista - Vincit Teatime 2014

�30

HYBRIDI/HTML5 TAI RISTIKÄÄNNÖS ON AINA KOMPROMISSI

- MUTTA MONESTI HYVÄ SELLAINEN

Page 31: Sekaisin mobiilista - Vincit Teatime 2014

MILLAISIA VALINTOJA OLEMME VINCITILLÄ

TEHNEET

�31

Page 32: Sekaisin mobiilista - Vincit Teatime 2014

�32

ESIMERKKEJÄ NATIIVISTA

Kuva  kaukosäätimestä:  http://www.steinwaylyngdorf.com/products/model-­‐c-­‐components/model-­‐c-­‐remote-­‐control

Steinway Lyngdorf Remote Evice

Page 33: Sekaisin mobiilista - Vincit Teatime 2014

�33

ESIMERKKI HYBRIDISTÄ

Team Action Zone: ActionTrack

Muutamia media- taloille toteutettuja sovelluksia

Page 34: Sekaisin mobiilista - Vincit Teatime 2014

�34

ESIMERKKI RISTIKÄÄNNETYSTÄ

Virittäjät, kaupoissa 11.3.

Page 35: Sekaisin mobiilista - Vincit Teatime 2014

�35

VILLI KORTTI: MOBIILIWEB

Edut Haitat

• Päivitysnopeus • Samat UI-

teknologiat kuin hybrideissä

• Löydettävyys hakukoneilla

• Pieni käyttökynnys

• Erittäin rajoittunut pääsy alustan toimintoihin

• Hidas • Sovelluskaupan

tulot = 0€

Page 36: Sekaisin mobiilista - Vincit Teatime 2014

�36

ESIMERKKI MOBIILIWEBISTÄ

EmotionTracker

Page 37: Sekaisin mobiilista - Vincit Teatime 2014

• Teknologiasta riippumatta, tee ensin yksi alusta kuntoon ja pidä se “pääalustana”, jolle kaikki tehdään ensin

• Muita alustoja tehdessä: muista regressiotestaus jos hybridi tai ristikäännetty

• Etenkin hybrideissä ja ristikäännetyissä testauksen automatisoiminen kullan arvoista • Tosin etenkin automatisoitu järjestelmätestaus

kohdelaitteessa hankalaa • Jos et tunne teknologiaa hyvin, tee paljon protoja

�37

HYVIÄ KÄYTÄNTÖJÄ

Page 38: Sekaisin mobiilista - Vincit Teatime 2014

KIITOS!Juha Riippi [email protected] Twitter: @JuhaRiippi

�38