Razvoj Aplikacija Za Mobilne Telefone

3,442 views
3,339 views

Published on

prezentaciju odrzao Tomislav Car (Infinum) na Barcamp Zagrebu 05.12.2007.

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,442
On SlideShare
0
From Embeds
0
Number of Embeds
24
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Razvoj Aplikacija Za Mobilne Telefone

  1. 1. Tomislav Car Infinum d.o.o.
  2. 2. Tko je ovaj tip? <ul><li>Tomislav Car (1.put) </li></ul><ul><li>Infinum d.o.o. </li></ul><ul><ul><li>mobilne aplikacije, mobilne igre, mobilni content, mobilni library (GUI, enkripcija..) </li></ul></ul><ul><ul><li>mobilni marketing i content delivery </li></ul></ul><ul><ul><li>uglavnom Java </li></ul></ul><ul><ul><li>Symbian </li></ul></ul>
  3. 3. Motivacija za predavanje <ul><li>malo ljudi je detaljnije upoznato s mobilnim tržištem </li></ul><ul><li>puno ljudi bi se htjeli širiti na mobilno tržište </li></ul><ul><li>naša iskustva </li></ul><ul><li>tehnološki presjek </li></ul><ul><ul><li>što želim != što mogu </li></ul></ul><ul><li>fokus </li></ul><ul><ul><li>Java </li></ul></ul><ul><ul><li>telefoni (manje ručna računala) </li></ul></ul><ul><ul><li>mobilni telefoni “za mase” </li></ul></ul>
  4. 4. Želite mobilizirati svoj servis? <ul><li>Pružiti korisnicima dodatnu uslugu </li></ul><ul><li>Mobilnih korisnika ima puno više </li></ul><ul><li>Mobilni korisnici su naučeni platiti </li></ul><ul><ul><li>ali ne uvijek </li></ul></ul><ul><li>Ciljana skupina? </li></ul><ul><ul><li>poslovni korisnici </li></ul></ul><ul><ul><li>“ za mase” </li></ul></ul><ul><li>Kakvu aplikaciju radite? </li></ul>
  5. 5. Mobilno tržište <ul><li>Puno se govori u medijima </li></ul><ul><li>Malo se događa stvarno </li></ul><ul><li>Svi su očekivali veliki boom mobilnog tržišta </li></ul><ul><li>Nedostaje “killer app” </li></ul><ul><li>“ Gorak okus” developmenta </li></ul><ul><li>Ne znači da ne treba raditi </li></ul>
  6. 7. WAP <ul><li>WAP stranice – wml, cards... </li></ul><ul><li>XHTML stranice </li></ul><ul><ul><li>relativno dobro rade, markup prolazi </li></ul></ul><ul><li>CSS – ne bas tako dobro <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;handheld&quot; href=&quot;mobile.css&quot; /> <style type=&quot;text/css&quot; media=&quot;handheld&quot; / > <style type=&quot;text/css&quot;>@import url(&quot; mobile.css &quot;) handheld;</style> @media handheld { ... } </li></ul>
  7. 8. WAP - browseri <ul><li>mobilni browseri su relativno loši </li></ul><ul><li>puno ih ima </li></ul><ul><li>puno različitih rezolucija </li></ul><ul><li>Opera </li></ul><ul><ul><li>dobar browser, ali nemaju ga telefoni predinstalirano </li></ul></ul><ul><ul><li>podržava xhtml, css i ajax prilično kvalitetno </li></ul></ul><ul><ul><li>j2me i symbian varijanta </li></ul></ul><ul><li>Internet Explorer Mobile  - podržava ajax </li></ul>
  8. 9. J2ME <ul><li>daleko najpopularnija tehnologija </li></ul><ul><li>najveći broj uređaja </li></ul><ul><li>problematična područja </li></ul><ul><ul><li>imenik </li></ul></ul><ul><ul><li>filesystem </li></ul></ul><ul><ul><li>zvuk </li></ul></ul><ul><ul><li>bluetooth </li></ul></ul><ul><ul><li>sms poruke </li></ul></ul><ul><ul><li>fotografije </li></ul></ul><ul><ul><li>kamera </li></ul></ul><ul><ul><li>decimalni brojevi (da, float) </li></ul></ul><ul><ul><li>neki telefoni ne podržavaju ni JPG </li></ul></ul>
  9. 10. J2ME <ul><li>sandbox </li></ul><ul><ul><li>MIDleti ne mogu komunicirati međusobno </li></ul></ul><ul><li>spremanje podataka samo u RecordStore </li></ul><ul><li>limitirane veličine izvršne .jar datoteke </li></ul><ul><ul><li>voditi racuna i zbog činjenice: download=novac </li></ul></ul><ul><li>limitiran heap </li></ul><ul><li>različite dimenzije ekrana </li></ul><ul><ul><li>od 100px do 320px širine </li></ul></ul><ul><li>performanse </li></ul><ul><li>GUI elementi - “ružno” </li></ul>
  10. 11. J2ME - Brojni faktori <ul><li>configurations </li></ul><ul><ul><li>CLDC 1.0, 1.1, CDC </li></ul></ul><ul><li>profiles </li></ul><ul><ul><li>MIDP 1.0, MIDP 2.0 </li></ul></ul><ul><li>optional apis </li></ul><ul><ul><li>Web Services API (JSR 172), Mobile 3D Graphics API (JSR 184), L ocation API (JSR 179) , Wireless Messaging API ... </li></ul></ul><ul><li>vendor specific apis </li></ul><ul><ul><li>skoro svaki ih ima </li></ul></ul><ul><li>vendors (proizvođači) </li></ul><ul><ul><li>Nokia, Samsung, SonyEricsson, Siemens, Motorola.. </li></ul></ul><ul><li>devices (telefoni) </li></ul><ul><ul><li>6630, E50, SGH-D800, K750i, CX65, V3... </li></ul></ul><ul><li>ne kažem da se ne može </li></ul><ul><ul><li>morate biti spremni </li></ul></ul><ul><li>bugs </li></ul>
  11. 12. Implementacijska neovisnost <ul><li>enkapsulacija je super stvar, ali... </li></ul><ul><li>nejasne specifikacije dovode do razlika u implementaciji </li></ul><ul><ul><li>Motorola prikazuje commandove drukčije od svih ostalih </li></ul></ul><ul><ul><li>Nokia Series 60 neće u fullscreen prije nego što postaviš CommandListener </li></ul></ul><ul><ul><li>Samsung serija SGH-nesto do SGH-nesto2 ne prijavljuje ispravno veličinu ekrana </li></ul></ul><ul><ul><li>Samsung model XYZ cijelo vrijeme flickera ekran </li></ul></ul><ul><li>razvoj izvediv </li></ul><ul><ul><li>potrebne adaptacije za specifične telefone – developeri to mrze (čini ih nesretnim  ) </li></ul></ul>
  12. 13. Developeri doskaču <ul><li>J2ME Polish </li></ul><ul><ul><li>GUI Library </li></ul></ul><ul><ul><li>Serialization Framework </li></ul></ul><ul><ul><li>Persistence </li></ul></ul><ul><ul><li>Remote Method Invocation </li></ul></ul><ul><ul><li>IDE Integration </li></ul></ul><ul><ul><li>Java 5.0 podrška </li></ul></ul><ul><ul><ul><li>enums , generic s </li></ul></ul></ul>
  13. 14. J2ME - Razvoj <ul><li>Wireless Toolkit </li></ul><ul><li>Razvojno sučelje </li></ul><ul><ul><li>Eclipse ili NetBeans </li></ul></ul><ul><li>radi u emulatoru – radi na svakom telefonu? – pobogu ne!! </li></ul><ul><li>Metodologija testiranja </li></ul><ul><ul><li>nemoj ostaviti curu ako ima dobru Nokiu </li></ul></ul><ul><ul><li>nemoj se posvađati s prijateljem koji ima dućan s telefonima </li></ul></ul><ul><li>Kritični rez </li></ul><ul><ul><li>odabrati podskup proizvođača/mobitela/tehnologija za koje razvijate </li></ul></ul>
  14. 15. Flash Lite <ul><li>Flash player 7 </li></ul><ul><li>ActionScript 2.0 </li></ul><ul><li>vizualno atraktivna rješenja </li></ul><ul><li>flv support </li></ul><ul><li>vector based grafike </li></ul>
  15. 16. Flash Lite <ul><li>plus </li></ul><ul><ul><li>nema ovisnosti o telefonu stvar koju su pokušali napraviti u Javi, ali bezuspješno </li></ul></ul><ul><ul><li>IDE – brži razvoj </li></ul></ul><ul><li>minus </li></ul><ul><ul><li>nema pristupa podacima od telefona </li></ul></ul><ul><ul><li>još uvijek slabo zastupljeno od strane proizvođača telefona (ima nešto Nokia, SonyEricsson..) </li></ul></ul><ul><ul><li>također loši distribucijski kanali </li></ul></ul><ul><li>kvalitetno rješenje za multimedijalne projekte </li></ul>
  16. 17. Symbian OS <ul><li>većinski vlasnik Nokia </li></ul><ul><li>C++ </li></ul><ul><ul><li>daleko veće mogućnosti od Jave, pristup low level funkcijama telefona kao i skoro svim podacima </li></ul></ul><ul><ul><li>“ pravo” programiranje </li></ul></ul><ul><li>.sis datoteke </li></ul><ul><li>zanimljivost: podložno virusima </li></ul><ul><li>razvoj: Carbide C++ (ko Eclipse), ima i VS plugin </li></ul><ul><ul><li>moguć i Python </li></ul></ul>
  17. 18. Symbian OS – version fun <ul><li>Nokia series </li></ul><ul><ul><li>S60 1st edition </li></ul></ul><ul><ul><li>S60 2nd edition FP 1 </li></ul></ul><ul><ul><li>S60 2nd edition FP 2 </li></ul></ul><ul><ul><li>S60 2nd edition FP 3 </li></ul></ul><ul><ul><li>S60 3rd ... </li></ul></ul><ul><ul><li>... </li></ul></ul><ul><ul><li>S80 </li></ul></ul><ul><ul><li>S90 </li></ul></ul><ul><li>Symbian verzije </li></ul><ul><ul><li>Symbian 6.0 </li></ul></ul><ul><ul><li>... </li></ul></ul><ul><ul><li>.. </li></ul></ul><ul><ul><li>Symbian 9.5 </li></ul></ul>
  18. 19. Symbian OS uređaji <ul><li>Uglavnom high-end uređaji, Smartphoneovi </li></ul><ul><ul><li>po nekim pokazateljima 75% smartphonea su Symbian based </li></ul></ul><ul><ul><li>dakle ovo je definitivno platforma za Smartphone aplikacije </li></ul></ul><ul><li>Nokia Series 60 </li></ul><ul><ul><li>popularno </li></ul></ul><ul><li>Nokia Series 80 </li></ul><ul><ul><li>par telefona </li></ul></ul><ul><li>Nokia Series 90 </li></ul><ul><ul><li>prilično mrtvo </li></ul></ul><ul><li>SonyEricsson UIQ </li></ul>
  19. 21. Brew <ul><li>moćan API, pristup podacima od telefona </li></ul><ul><li>certifikacija potrebna (košta) </li></ul><ul><li>slabo podržano u Europi </li></ul><ul><li>čak i u US slabija nego Java </li></ul><ul><li>Japan, Korea </li></ul>
  20. 22. Windows Mobile <ul><li>PocketPc </li></ul><ul><li>AT&T, Verizon, Sprint, Psion, Palm, Motorola - kod nas više/manje neupotrebljivo za telefone </li></ul><ul><li>C++ kod, managed code (C#), ili web aplikacije za Internet Explorer </li></ul><ul><li>Visual Studio </li></ul>
  21. 24. iPhone <ul><li>OS X stripped down </li></ul><ul><li>&quot;aplikacije&quot; se rade kao web aplikacije za Safari (wow!) </li></ul><ul><ul><li>Aptana </li></ul></ul><ul><li>Jobs najavio SDK za 3rd party developere </li></ul><ul><ul><li>Veljača / 2008 </li></ul></ul><ul><ul><li>iPhone touch </li></ul></ul><ul><ul><li>digitalno potpisivanje </li></ul></ul>
  22. 25. Android OS <ul><li>&quot;Google phone“, “gPhone” </li></ul><ul><ul><li>trakavica veća nego Vlatka Pokos </li></ul></ul><ul><li>Open handset alliance, 30+ kompanija, Google + još neki </li></ul><ul><li>Od nama poznatih: </li></ul><ul><ul><li>proizvođači: Motorola, Samsung, LG, HTC </li></ul></ul><ul><ul><li>operatori: T-Mobile, Sprint, Telefonica </li></ul></ul><ul><ul><li>Intel, Synaptics, Sirf, eBay... </li></ul></ul>
  23. 26. Android OS <ul><li>Linux kernel, Open Source, Apache 2 based licenca </li></ul><ul><li>Google izdao SDK beta </li></ul><ul><li>nema još telefona, 2.polovica 2008 </li></ul><ul><li>friško, upitna budućnost (nema glavnih igrača na tech tržištu: Apple, Nokia, Microsoft...) </li></ul>
  24. 27. Android OS <ul><li>kvalitetne mogućnosti </li></ul><ul><ul><li>osnovne: pozivi, sms poruke, kamera </li></ul></ul><ul><ul><li>SQLIte, OpenGL, bluetooth, USB ... </li></ul></ul><ul><li>PC pristup izradi aplikacija </li></ul><ul><ul><li>&quot;Da, mogu po defaultu otvarati slike u drugom picture vieweru!&quot; </li></ul></ul><ul><li>aplikacije se rade u Javi, (ali ne Micro Edition) </li></ul><ul><ul><li>neusporedivo više mogućnosti </li></ul></ul><ul><li>vrte se na Dalvik VM </li></ul><ul><ul><li>zanimljivost – ne kompajla se u bytecode nego u “njihov” bytecode – zaobišli Sun i zakonske regulative oko open sourcea </li></ul></ul>
  25. 28. Android developer challenge <ul><li>$10 mil. </li></ul><ul><ul><li>ide u 2 runde </li></ul></ul><ul><ul><li>50 * $25,000 </li></ul></ul><ul><ul><li>10 * $100,000 </li></ul></ul><ul><ul><li>10 * $275,000 </li></ul></ul><ul><li>traje do 03/ 2008 </li></ul><ul><li>Vrlo bitno: ne možete sudjelovati ako ste iz </li></ul><ul><ul><li>Kube, Irana, Sirije, Sjeverne Koreje, Sudana, Mianmara (Burma), Italije ili Quebeca </li></ul></ul>
  26. 29. <ul><li>Koja tehnologija će se održati? </li></ul><ul><li>Koja je mobilna tehnologija/platforma budućnosti? </li></ul><ul><li>Google forsira Android? Gdje je Opensocial u tome? </li></ul><ul><li>Open source pristup mobilnim telefona? A gdje su tu operateri i njihova zarada? </li></ul><ul><li>Security na mobilnim telefonima? </li></ul><ul><li>FlashLite i Flash – konvergencija u jednu tehnologiju? </li></ul>[email_address]

×