Utveckling med Mobility Engine
Mobility Engine tar hand om kommunikationen med
terminalerna. Utseende, funktionalitet och innehåll
bestäms av bakomliggande kundapplikation. Detta
avsnitt beskriver principerna kring hur man bygger en
applikation för mobila terminaler med hjälp av Mobility
Engine. Fullständig dokumentation medföljer produkten.Vilka förkunskaper
behövs? För att utveckla applikationer med
Mobility Engine behövs grundläggande kunskap i
Java-programmering. Om ni saknar kunskaper i Java hjälper vi
gärna till med utveckling av tjänsten alternativ
utbildning av er personal.
Att bygga en applikation Mobility
Engine är ett s.k. Java Package. Utöver funktionalitet
för att kommunicera med terminalerna innehåller det
också funktioner för att bygga användargränssnitt. Ett
användargränssnitt byggs upp av en eller flera sidor
(formulär). Varje sida består av en eller flera kontroller. Exempel på
kontroller är textfält, bilder,
länkar, knappar och inmatningsfält.

Mobility Engines funktioner för att bygga
användargränssnitt är åtkomliga från kundapplikationen
genom ett objekt som kallas SessionEngine.
SessionEngine används för att skapa nya sidor och för
att hämta information om den uppkopplade terminalen. När
en ny sida skapas erhålls ett sid-objekt som
används för att lägga till kontroller till sidan. Låt
oss ta det klassiska "Hello World"- exemplet för
att visa hur en ny sida byggs upp:
- page1 = se.addNewPage("Welcome!");
// Skapa en ny sida, page1. "se" är
-
// SessionEngine-objektet
-
page1.addTextControl("Hello World"); //
Lägg till ett textfält där det står
-
//"Hello
World"
- page1.sendToTerminal(); // Skicka den nya sidan till terminalen
-
-
I exemplet ovan består sidan av enbart en kontroll,
ett textfält med texten Hello World, men principen för att lägga till fler
kontroller är densamma. På rad 1 används
SessionEngine-objektet för att skapa en ny sida, page1,
med titeln Welcome.
På rad 2 adderas en kontroll, ett textfält (TextControl),
till sidan. På rad 3 instrueras
Mobility Engine att sidan är klar och ska visas i
terminalen. I användargränssnittet visas kontrollerna i
den ordning som de adderas till sidan. Kan en sida bli för stor om man lägger till
många kontroller? -Nej, om sidan skulle bli för
stor för att visas i en terminal delas den automatiskt upp
i flera delsidor!
Händelsestyrd programmering
Kommunikationen mellan Mobility Engine och kundapplikationen
är händelsestyrd. Det innebär att Mobility Engine
anropar olika metoder (funktioner) i kundapplikationen
beroende på vad användaren gör. Låt oss ta en
inloggnings-sida som exempel. Innan användaren ges
tillträde till tjänsten ska användarnamn och lösenord
verifieras.

Användaren fyller i namn och lösenord, och
klickar därefter på knappen Login. Klicket
på knappen Login är en händelse, och en
speciell metod (funktion) i kundapplikationen anropas. I
metoden kontrolleras att det användarnamn och lösenord är giltigt, och därefter öppnas en
meny-sida.
Mobility Engine innehåller även en funktion för att
automatiskt gå till andra sidor utan att metoder i
kundapplikationen behöver anropas, så kallad
direktnavigering. Direktnavigering används då det inte
finns behov av att kontrollera eller bearbeta information
innan nästa sida visas.
Cache-funktion
De sidor som skapas sparas i Mobility Engine och kan snabbt
visas igen utan att de behöver skapas på
nytt. Om en sida har förändrats sedan den visades senast
känner Mobility Engine av detta och uppdaterar sidan innan
den skickas till terminalen på nytt. En förändring kan
bestå i att komponenter har tillkommit eller tagits bort,
eller att innehållet i en komponent eller dess egenskaper
har ändrats.
|