
Sådan opgraderer du din WP7 app til WP8
Med frigivelsen af Windows Phone 8 SDK’et er der kommet et antal nye features som vi kan bruge i vores apps. Udover features er der også kommet nogle hardware specifikke opgraderingen som fx højere skærmopløsning, forbedringer til CPU etc.
Til trods for de mange ændringer til hardwaren, OS’et og applikation features etc. så vil langt de fleste 7.1 apps fortætte med at fungere helt normalt på Windows Phone 8. Men hvis du gerne vil bruge nogle af de nye muligheder i WP8, i din eksisterende 7/7.1 app, så kræver det en opgradering.
Du kan se en komplet liste over ændringer fra Windows Phone 7 til Windows Phone 8 her: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206947(v=vs.105).aspx
Der er, selvsagt, flere måder at opgradere sin app på, herunder er nævnt 3 metoder. Alt efter temperament kan du vælge den model som du synes passer bedst til den app du vil opgradere… eller finde på en helt anden model:
- Opret to separate kopier af app’en (en for hver individuel version). Det er nemt at lave en kopi for hver version, men vedligehold bliver hurtigt en udfordring da fejl skal rettes og replikkeres til de enkelte versioner. Er reelt set kun en mulighed for mindre apps hvor koden nemt kan overskues.
- Opret to separate app projekter (7.1 & 8) og del kode via et fælles ”class library” (PCL). Opret to Windows Phone projekter i samme ”solution” for henholdsvis WP 7.1 og WP8. Herefter oprettes et fælles bibliotek som begge WP projekter referer til. Det er vigtigt at det fælles ”class library” er sat til at understøtte 7.1. Denne fremgangsmåde betyder at det ikke er muligt at bruge WP8 features i fælles biblioteket. Det betyder at al WP8 specifik funktionalitet skal implementeres direkte i WP8 projektet, uden om det delte bibliotek. Det betyder i mange tilfælde at det er stærkt begrænset hvor meget kode der kan deles mellem de to versioner og i nogle tilfælde kan det næsten kun svare sig at dele ViewModels og generel API logik.
- Opret to separate projekter som bruger ”delte/linkede” kildekode filer: I al sin enkelthed bruger de to version af appen de samme filer. Funktionalitet og forskellighed mellem WP7 og WP8 styres så med ”conditional compilation” (http://msdn.microsoft.com/en-us/library/aa691099(v=vs.71).aspx). Det er min erfaring at dette kan gøres meget elegant, så længe forskellene ikke er for store og mængden af ”Conditinals” holdes nede.
Uafhængigt af hvilken model man vælger så er opgraderingen af et WP7 projekt til WP8, en simpel ”højre kliks øvelse”. Åben dit WP7 projekt i Visual Studio. I Solution Explorer ”høreklik” på WP7 projektet og vælg ”upgrade to Windows Phone 8.0” og du er done ;)

Bemærk! Det er ikke muligt vha. Visual Studio at konvertere tilbage, altså fra 8.0 til 7.1, derfor er det vigtigt at du husker at tage en kopi/backup af dit projekt inden konverteringen til WP8.
Tilføj WP8 tiles til din nye WP8 app
Du kan hurtigt og nemt tilføje fx Cycle Tile til din Windows Phone 8 app, læs hvordan her: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207036(v=vs.105).aspx
Tips, tricks & FAQ
- XNA: Det er ikke muligt at opgradere et XNA projekt til WP8, ønsker du at forsætte med at udgive et spil i XNA skal du ikke opgradere til WP8, men blive på WP7. I WP8 understøttes native kode, læs mere her: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206940(v=vs.105).aspx#BKMK_Direct3Dandgames
- Windows Phone Advertising SDK. Som en del af opgraderingen til WP8 bliver der tilføjet en opgraderet version af Advertising referencerne, de gamle referencer slettes dog ikke, det skal gøre manuelt.
Tilføj Windows Phone 8 Tile funktionalitet til din WP 7.1 og 7.8 app
Læs mere her: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj720574(v=vs.105).aspx
Downloads
Windows Phone SDK kan hentes her: http://dev.windowsphone.com/en-us/downloadsdk
Martin arbejder i Microsoft med udvikling af apps til Windows Phone og Windows 8, samt har ansvaret for den tekniske relation til universiteterne i Danmark. Han blogger fortrinsvis om apps udvikling til Windows platformen.
Follow @martinesmannKommentarer (15)
Hvad er minimumskrav for at komme igang med apps til Windows 8?
Her tænker jeg på styresystem (måske noget virtuelt på ens Windows 7 maskine), emulatorer/telefon osv.
Man kan se minimumskrav for hvert enkel SDK version, under download:
se fx her for Windows Phone 8 SDK: http://www.microsoft.com/en-us/download/details.aspx?id=35471
I korte træk: Windows 8, Windows 8 Pro, 64-bit (x64) client versions
etc...
Heh - der må sidde et virkeligt bittert menneske derude, siden han har nedstemt de to første indlæg i tråden.
Så man er af med små 3.000 kr før du er igang med at lave apps?
Umiddelbart ser det ud til, at det også virker med de gratis Express-versioner af Visual Studio, så det er "blot" prisen på Win8 du skal betale - hvis du ikke allerede har det på din PC.
Jeg synes i øvrigt, at det er fuldstændigt idiotisk, at det kræver Win8 at lave WP-apps.
express versionerne kan sagtens bruges, så det er "bare" windows 8 64 bit som skal erhverves.
hvis man er studerende med adgang til dreamspark pro, kan man frit hente både windows 8 og VS pro, samt få en gratis windows phone store developer konto.
men ja for alle dem som, forventeligt har en løn, skal man selv betale for windows 8.
Du kan køre VS2010 Express (http://www.microsoft.com/visualstudio/eng/products/visual-studio-2010-ex...) på en Windows 7 - dermed kan du lave Apps til Windows Phone 7.5. Og som Esmann skriver, så vil de langt hen af vejen være brugbare på Windows Phone 8.
Hehe, jeg tænkte næsten det samme ... min hjerne stoppedede dog desværre ret pludseligt, da jeg så stemmerne og den gik i "does not compute"-state.
Men sådan er det jo. Drister man sig til at snakke pænt om MS, så skal man satme ned med nakken.
I øvrigt enig i, at det er noget pjat, at Win8 er påkrævet.
Hvis man køber en Windows Pro 8 opgradering senest den 31/1-2013 kan man få den til sølle 229 kr. ... det er da billigt for at få et godt styresystem og så kunne udvikle til Windows Phone! :)
Nu er der lidt mere motivation for at opgradere sin WP7 app til WP8 ;)
http://da.surveymonkey.com/s/wp7tilwp8
Præmierne du kan vinde er:
2 x Windows Phone 8
2 x Windows Phone 7.8
1 x Bluetooth Hovedtelefoner
2 x Bluetooth Head sets
43 Biografpakker (2 biletter med popcorn og sodavand)
Hvordan kunne Android få så mange apps, så hurtigt?
- Fordi folk var tvunget til at købe et bestemt styresystem?
- Fordi folk var tvunget til at købe et bestemt udviklings system (eller nøjes med en skrabet udgave)?
Microsoft er langt bagefter, og burde gøre alt for at få folk til at udvikle apps. Jeg fatter simpelhen ikke at de ikke åbner op og følger de to andre. Hvad koster en osX opgradering? Stiger den? Men android kan du selv vælge os og udviklingssystem gratis.
Jo flere der udvikler apps til wp, des flere penge tjener ms. Så det er mig lidt af en gåde, at de er dem der gør det mest dyrt for folk, samt færrest valg.
Christian > 299 er en fin pris, men den stiger dog nu.
Mit problem er at jeg har en stationær pc, uden touch. Har prøvet en Windows 8 på mit arbejde uden touch, og det duer på ingen måde. Havde jeg kunne betale 299 kr, og få lov at beholde min Windows 7, og udvikle til wp8, var jeg nok hoppet på. Har før prøvet Express (mener det var 2008), og det gav en del problemer med udløbs dato, og app der skulle recompileres og reinstalleres på klienter. Den vej går jeg ikke igen.
Henrik: Ja, nu er tilbudet om at købe Windows 8 til 229 kr. slut - ved ikke om man kan blive reddet af noget tidszone, men så er det vist minutter det drejer sig om før det er slut. :)
Personligt synes jeg ikke det er noget problem med Windows 8 på PC uden touch. Det koster et klik efter du er logget ind for at komme til desktoppen og så kan du jo bare blive der, hvis du er utryk ved "metro" :)
Selvom man ikke bruger Windows Store Apps er der masser af andre fordele ved Windows 8 fremfor Windows 7 synes jeg.

