Master Thesis in Applied Information Technology
Mobile Ajax
Magisterexamen med inriktning mot tillämpad informationsteknik Januari 2008, Institutionen för tillämpad IT
Kungliga Tekniska Högskolan
1
Agenda




Inledning
Problemställning
Genomförande
Diskussion och slutsatser
Presenteras av Mahmud och Haydar
KTH - Institutionen för tillämpad IT
2
Web 2.0


Är ett samlingsnamn för nästa generation
av webbtjänster. t. ex. Wikipedia.
För att en webbsida ska definieras som
Web 2.0 måste den bl. a. uppfylla följande
villkor:
Att användarna skall kunna:
- bidra till sajtens innehåll
- ha kontroll över sin information
 designen ska vara interaktiv och
användbar

3
Web 2.0 principer
Tim O’Reilly sju grundläggande principer för Web 2.0 är:
Webben
som
plattform
Rik
användaru
pplevelse
Program
varan ligger
ovanför
enhetens
nivå
Utnyttja
kollektiv
intelligens
Web 2.0
principer
Lättviktspro
grammering
s-modeller
Data är
nästa Intel
Inside
Slutet på
mjukvarula
nseringscy
kel
• Tjänster på Webben istället för de
traditionella applikationer.
• Att användarna kan skapa &
redigera webbens innehåll.
• Att ha en databas som inte ägs av
tillverkaren.
• Att uppdateringar sker utan att
skickas till användarna.
• Tjänster bygger på Ajax & RSS,
automatiskt leverans av information.
• Kan köras på vilken dator som
helst.
• Underlättar hantering av tjänster
4
för användaren.
Mobile Web 2.0
“Mobile Web 2.0 is focused on the user as the creator
and consumer of content ‘at the point of inspiration’
and the mobile device as the means to harness
collective intelligence” [Jaokar & Fish, 2006]

Utnyttja kollektiv intelligens
Användaren är både skaparen och konsumenten av
innehållet och den mobila enheten är ett hjälpmedel
för att utnyttja den kollektiva intelligensen.
5
Mobile Web 2.0 principer
Jaokar och Fish har sammanfattat sju grundläggande principer för
Mobile Web 2.0 enligt följande:

Mobilinn
ehåll
Mobilsö
kning
Location
Based
Services
(LBS)

Jag är
en tagg
Mobile Web 2.0
principer
Mobile
Ajax &
Mobile
Widgets
Digital
Converg
ence


Mångspr
åkig


Användargenererat material m.h.a.
t.ex. Moblogging
Ersätta alla nummer med
taggar/nyckelord.
Taggat innehåll ger möjlighet till
mångspråkighet.
Sammansmältning av media (ljud,
bild, video, TV) och Mashups.
Mobil access till webbapplikationer
Lokaliseringsbaserade tjänster
Söka info. via mobilen t.ex. Eniro
6
Ajax




Ajax (Asynchronous JavaScript and XML):
En användbar teknik för utveckling av Web
2.0 tjänster.
Ajax är inte ett programmeringsspråk, utan
ett samlingsnamn för några tekniker som
används för att utveckla webapplikationer.
Den hämtar information löpande från servern
utan omladdning.
Webbplatsen blir mer interaktiv.
7
Ajax teknologier





HTML/XHTML och CSS för standardbaserad
presentation.
XML och XSLT för datautväxling och
manipulation.
JavaScript för att dynamiskt binda ihop allt.
DOM för dynamiskt utseende och interaktion.
XMLHttpRequest för asynkron datahämtning.
8
Mobile Ajax


Mobil access till webbapplikationer
t.ex. Gmail.
Mobile Ajax är en specialisering av
Ajax principer för att applicera
tekniken på mobiltelefoner och
alla begränsade enheter som har
webbläsaregenskaper, såsom
spelkonsoler och digitalboxar.
9
Mobile Ajax teknologier


Mobile Ajax uppsättningsteknologier skiljer i
stort sett inte så mycket från teknologierna
som används vid standard Ajax-utveckling.
Det krävs minst stöd för: XMLHttpRequest
(XHR), JavaScript och DOM (eller
innerHTML). CSS-stilmallar kan även
Ajax
användas för att t.ex. formatera text .
Mobile
Ajax
10
Problemställning
1.
2.
3.
4.
Kan Mobile Ajax göra mobila
webbapplikationer mer användarvänliga,
dynamiska och interaktiva?
Vilka funktionaliteter i Mobile Ajax
underlättar utvecklingen av mobila
webbapplikationer?
Vilka krav ställer Mobile Ajax på mobila
enheter?
Vilka fördelar och nackdelar har Mobile Ajax
jämfört med Java ME och Flash Lite?
11
Genomförande
Utveckling av en Ajaxbaserad chattapplikation (IM) till mobila enheter.
 Utveckling av en Java ME version
 Utveckling av Flash Lite version
 Tester på några mobila enheter.

12
Use Case
13
Mobile Ajax Instant Messenger
MAIM – DEMO
www.mobileajax.se/maim
14
http://www.testiphone.com
Aktivitetsdiagram
15
Verifiering av
användarnamnet
16
Testenheter
Webbläsare
Enhet
Nokia 6610 Navigator
Web Browser for S60
Sony Ericsson P990i
Opera 8.60 for symbian OS
Nokia 5500
S60 NGBrowser 3.00
Nokia N73
Opera 8.65 for S60 3.x Ver:8.65
Nokia N70
Web Browser for S60
Sony Ericsson T650
NetFront 3.3
Sony Ericsson K800i
NetFront
Nokia 6280
WAP 2.0/xHTML
17
Testresultat
SE
P990i
Nokia
5500
Nokia
6610
Nokia
N73
Nokia
N70
SE
T650
SE
K800i
Nokia
6280
1. JavaScript
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
2. try...catch
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
3. getElementById
Ja
Ja
Ja
Ja
Nej
Ja
Ja
Nej
4. getElementById
RW
Ja
Ja
Ja
Ja
Nej
Ja
Ja
Nej
5. innerHTML on DIV
Ja
Ja
Ja
Ja
Nej
Ja
Ja
Nej
6. XHR
Ja
Ja
Ja
Ja
Nej
Nej
Nej
Nej
7. XHR Onclick
Ja
Ja
Ja
Ja
Nej
Nej
Nej
Nej
Ja
Nej
Nej
Ja
Nej
Nej
Nej
Nej
MAIM
18
Slutsatser
1. Kan Mobile Ajax göra mobila webbapplikationer mer
användarvänliga, dynamiska och interaktiva?
Ja. För att användaren behöver inte uppdatera webbsidan
själv utan detta sker dynamiskt. Detta medför mer interaktivitet
och kortare svarstider.
 Mobile Ajax bygger på en asynkron kommunikationsmodell,
vilket gör mobila webbapplikationer dynamiska och interaktiva.
 Mycket effektivare än den klassiska webbapplikationsmodellen
 Kommer i framtiden att prestera ännu bättre än den gör idag.
 Allt detta gör Mobile Ajax webbapplikationer mer
användarvänliga och sparar båda tid och bandbredd.

19
Slutsatser
2. Vilka funktionaliteter i Mobile Ajax
underlättar utvecklingen av mobila
webbapplikationer?




Utveckling med befintliga öppna standard
webbteknologier som man är redan van vid, såsom
JavaScript, XHTML, CSS och DOM.
Detta leder till mindre träning och når ut på
marknaden snabbare.
Administrationen och uppdateringen styrs helt från
servern.
Bör appliceras i ett noggrant och meningsfullt sätt!
(Valet av mobilen och webbläsaren är avgörande)
20
Slutsatser
3. Vilka krav ställer Mobile Ajax på mobila
enheter?



En ”modern” webbläsare som har stöd för JavaScript
och DOM - Document Object Model eller åtminstone
innerHTML stöd, samt XMLHttpRequest.
Våra tester visade att Opera Mobile har bäst stöd för
Mobile Ajax.
Vissa Mobile Ajax applikationer t.ex. IM (Instant
Messenger) kräver permanent Internetanslutning.
21
Slutsatser
4. Vilka fördelar och nackdelar har Mobile Ajax
jämfört med Java ME och Flash Lite?

Användarperspektiv
- Mobile Ajax kan integreras i befintliga lösningar.
- Användaren kan börja eller fortsätta arbeta med
sina mobila webbapplikationer, utan att behöva ladda
ner eller installera extra programvara på klienten.
- Användarens upplevelse ökar på ett interaktivt sätt.
- Både Java ME och Flash Lite kräver nedladdning
och/eller installationer av programvara. Detta är en
lätt uppgift men kan vara en tröskel för nybörjare.
22
Slutsatser

Utvecklarperspektiv
- Bättre och kraftfullare mobilwebbutveckling med befintliga standard
teknologier.
- Lättare att lära sig än Java ME och Flash
Lite, som är betydligt svårare och kräver att
man både behöver lära sig nya språk och
sätta sig in i nya utvecklingsmiljöer.
23
Slutsatser

Kompatibilitet
- Dagens webbläsarna har dåligt stöd för Mobile
Ajax.
- Java ME applikationer kan köras på enheter som
har operativsystem som stödjer Java
- Flash Lite applikationer kan köras på
operativsystem som har stöd för Flash och har en
Flash Player installerad.
- Det är underförstått att Java Me och Flash Lite
kräver ej en webbläsare.
24
Förslag till vidareforskning
Mobila webbläsare
 Säkerheten i Mobile Ajax
 Jämförande studie:

JavaFX Mobile, Flash Lite och Mobile Ajax.
25