1 av 1Trafikofon är en Windows Phone app som jag utvecklade för omkring 1,5 år sedan. Det är en enkel app, som har ett tydligt syfte, vilket är att spela upp det senaste trafikmeddelandet ifrån Sveriges Radio P4 Stockholm.

Jag bestämde mig för att detta skulle bli min första app som jag också publicerar i Windows Store för Windows 8. Här nedan kommer några av mina erfarenheter av att göra detta.

Här kan du ladda ned Trafikofon för Windows Phone

Här kan du ladda ned Trafikofon för Windows 8

Oj, vilken stor skärm

Den första och egentligen största skillnaden mellan en app för Windows Phone och Windows 8 är den stora skärmen som man har tillgång till i Windows 8. Detta kan vara lite skrämmande och skapa “skrivkramp”. (Jag tror det var Ernest Hemingway som sade att han avskydde ett tomt pappersark och rekommenderade att man direkt skrev något på arket. Något som man sedan troligtvis tog bort.)

screenshot_09052012_194042

Design, design och design

Det svåraste när man konverterar en app ifrån Windows Phone är inte funktionaliteten som sådan eller koden som den utgörs av utan av hur man skall anpassa sin design till de nya förutsättningarna. En komplikation är att designen och användargränssnittet inte kan vara anpassat efter endast en skärmupplösning som i Windows Phone. Förutom att skärmen kan vara liggande och stående, så kan den vara i olika format och så kan en app vara “snappat” på högra eller vänstra sidan av skärmen. Detta gör att man måste göra ett mer adaptivt användargränssnitt som flyter med skärmens storlek och orientering.

Asynkront

Det har blivit vanligare och vanligare att försöka skriva sina program så att de utnyttjar asynkrona anrop. Det vill säga att man gör ett anrop och sedan väntar man inte på svaret utan gör något annat under tiden tills resultatet kommer tillbaka och då bearbetar man det. I Windows 8 är många av operativsystemets API:er asynkrona och man har fått hjälp i programmeringsspråken med två nya kommandon, async och await.

Simulator, Local Machine och Remote Machine

Det blir lite annorlunda att testa sina appar i Windows 8 därför att alla appar startar i fullskärmsläge. Personligen rekommenderar jag att man skall försöka ha två skärmar kopplad till sin dator så att man samtidigt kan köra sin app och se koden. Kan man inte det så finns två andra möjligheter: Simulator och Remote Machine.

Med simulatorn så startar man en simulering av Windows 8 och installerar appen där. Denna simulator är bra också om man vill testa ändrad orientering av skärmen och även simulera touch utan att ha en touchskärm. Det fungerar på ungefär samma sätt som emulatorn i Windows Phone.

Remote Machine gör det möjligt att över sitt nät koppla upp sig emot en annan dator och köra appen där. Debuggning funkar. Det är inte som på Windows Phone där man via en USB-kabel kan installera och köra en app på sin telefon.