Gdy zaczynałam swoją przygodę z programowaniem w Windows Phone (jakoś w maju zeszłego roku) okazało się, że to nie jest po prostu kolejny rodzaj projektu w Visual Studio. A szkoda, bo samo rozpoczęcie pracy, czy przeglądnięcie kodu, który zastałam w nowej pracy, wymagało wielu instalacji. Jasne, że wiele z nich dotyczyło konkretnych bibliotek użytych w projekcie, jednak kilka ruchów było niezbędnych, by w ogóle zacząć pracę z platformą. Postanowiłam opisać dla potomności te moje pierwsze kroki, a nuż ktoś skorzysta z opcji #lazyweb.
Konfiguracja środowiska developerskiego
By zacząć programować na WP8 (dla WP7 wymagania są mniejsze) potrzebne nam są przynajmniej :
- Windows 8 64-bit (MSDN sugeruje, że musi to być Pro, ale to nieprawda),
- Visual Studio 2012 (wystarczy Express),
- Windows Phone SDK 8.0.
Tak jest na początek – samo SDK instaluje nam:
- VS 2012 Express (jeśli nie mamy),
- szablony projektów (które są już w VS jeśli mamy już choć wersję Professional),
- Emulator WP
Tuta mała notka – emulator wymaga Hyper-V, więc jeśli chcemy go używać, wersja Windows powinna być przynajmniej przynajmniej Pro. Ale o samym Hyper-V za chwilę.
No i teoretycznie można zaczynać programowanie.
Tworzenie projektu
Tutoriali do WP jest całe mnóstwo. Nie ma sensu bym się powtarzała. Powiem tylko, że po instalacji SDK w VS pojawia się cała sekcja Windows Phone, można wybrać jeden z kilku rodzajów projektów i zacząć programować. Fazy budowy aplikacji przedstawię w kilku kolejnych wpisach.
Uruchamianie i debuggowanie
Gdy już stworzymy jakąś funkcjonalność lub jeśli chcemy sprawdzić jak działa szablonowy projekt, to trzeba go jakoś uruchomić. Tutaj mamy dwa wyjścia – emulator lub telefon.
Aby użyć emulatora potrzebujemy Hyper-V, które wymaga pewnych ustawień w BIOSie, DHCP, 4GB RAM i tego, by użytkownik należał do grupy Hyper-V Administrators. Tak naprawdę tych wymagań jest trochę więcej (odsyłam tutaj), ale widocznie miałam (tym razem) ogromne szczęście i mój lapek je wszystkie spełniał, nie musiałam więc nic dodatkowo konfigurować.
A jednak nie polecam zbytnio pracy na emulatorze. Jest wolny w działaniu (maaasaaaaakryyyycznieeee, chociaż, to się poprawiać pewnie będzie), bardzo wolno się uruchamia i nie zawsze zgodny z tym jak aplikacja zachowuje się na telefonie (chociaż tych różnic jest naprawdę niewiele). Dodatkowo, jeśli sobie go wyłączymy (np. przez przypadek, jak mi się często zdarzało), a nasza appka ma bazę danych, byliśmy do niej zalogowani, czy jej start trochę zajmuje, to przy kolejnym uruchomieniu emulatora musimy poczekać na to, aż on sam się rozkręci, aż nasza aplikacja wystartuje, trzeba się będzie zalogować oraz stracimy wszystkie zcachowane dane (również te z bazy danych).
Jakie w takim razie mamy wyjście? Słuchawkę 🙂 Podpinamy ją kabelkiem i uruchamiamy aplikacje na telefonie. Działa to trochę wolniej w trybie debuggowania (jednak to normalne), natomiast aplikacja zachowywać się będzie tak jak w rzeczywistości. Hola, hola, czy to takie proste? Tak, ale… Trzeba wykupić sobie konto developerskie i zarejestrować w nim telefon. Teraz to koszt ok 20$ rocznie i zapewniam, że jest warte nerwów, które można stracić przy walce z emulatorem.
Co z debuggowaniem? Tutaj nie ma nic szczególnego w stosunku do innych platform – możemy to robić zarówno na emulatorze jak i telefonie.
Miłego zaczynania!
Pingback: dotnetomaniak.pl
Zupełnie nie rozumiem tej spiny u narzekania na emulator jak to jest wooolny i wogole do dupy (zarowno tutaj jak i na prezentacji na kgd).
Ja nie mam z tym zadnych problemow – dziala zajebiscie szybko i stabilnie. Nigdy nie mialem zadnych problemow – ani z wydajnoscia ani z poprawnym startem.
Moim zdaniem duzo wygodniej pracuje sie na emulatorze a tel podpinam pod koniec developmentu zeby sprawdzic wydajnosc ew sprawdzic rzeczy specyficzne dla urzadzenia (aparat, nfc, bluetooth etc). Debugowanie na podpietym telefonie jest dużo wolniejsze (start appki, i przejscia miedzy krokami) i męczące.
Wystarczy miec w miare przyzwoitego kompa (ja mam i7, 8gb ram – nawet nie musi byc ssd) ale Twoja nowa praca chwiali sie ze można sobie sprzet samemu wybierac wiec to chyba nie problem?
bbg, wygląda na to, że mamy zupełnie inne doświadczenia w pracy z Windows Phone. Może mam zwyczajnie pecha, ale skoro byłeś na prezentacji na kgd, to chyba widziałeś, że mam marne szanse zaprzyjaźnić się z emulatorem 🙂
Cieszę się, że inni nie mają takich problemów, ale to nie zmienia mojego subiektywnego odczucia. A o tym był ten post. I ze sprzętem nie jest to związane. Mam i7, 8GB i dysk ssd, a jednak emulator działa mi bardzo wolno. Zresztą wszyscy koledzy z zespołu, którzy mają MacBooki, jeśli tylko mogli przenieśli się z debuggowaniem na telefony. Może jednak nie oszalałam w tej nienawiści do Hyper-V, co? 🙂