Var är jag Windows-telefon

Var är jag?

30 Jan 2012 av Nigel Sampson

Visa din nuvarande position på kartan. Vi använder GeoCoordinateWatcher och lock emulerar detta med Reactive Extensions.

Innan hoppa i tutorials huvudet att developer.windowsphone att ladda ner kostnadsfria verktyg och få dem installerade.

Denna handledning går mestadels täcka använda GPS som är i uppdrag att vara en del av Windows Phone 7, det brukade vara några problem med detta eftersom det var svårt att simulera GPS aktivitet genom emulatorn. Vi täcker hur man kan använda de nya utvecklingsverktyg för att emulera GPS eller hur man använder Reaktiva Extensions att göra något liknande.

Var är jag Windows-telefon

All kod för att arbeta med GPS finns i monterings System.Devices (detta härmar namnutrymmet för samma funktion i Windows 7). Så det första du behöver göra är att lägga till en referens. Eftersom vi ska använda ramverket Microsoft Reaktiva Extensions måste du lägga till hänvisningar till System.Observable och Microsoft.Phone.Reactive.

Vad vi ska göra är linda själva GPS i en reaktiv Extensions Observer, kommer detta göra det möjligt för oss att byta ut själva observerbara för vår genererade ett.

Det viktiga klass för GPS är GeoCoordinateWatcher, har det två metoder - Start och stopp och två händelser, PositionChanged och StatusChanged. Vi börjar med att skapa två fält för sida, en GeoCoordinateWatcher och Random för emulering.

Reaktiva Tillägg är ett stort bibliotek som ger Linq stil verksamhet under asynkrona och händelsebaserade verksamheter, kan du läsa mycket mer om det på RX Team blogg. Att skapa en observerbar runt GeoCoordinateWatcher vi använder den statiska metoden Observable.FromEvent passerar information om hur du prenumerera och avbeställa händelsen, sedan använder vi en Välj operation för att avlägsna en del av cruft eftersom vi är bara intresserad av tjänsten. Då kan vi börja watcher och tillbaka observer.

För emulering börjar vi med en mycket enkel metod som skapar ett slumpmässigt GeoCoordinate. I vår skapar emulator metod använder vi Observable.Timer metod för att skapa en observerbar kollektion som kommer att driva värden vid en regelbunden takt, då använder vi väljer att skapa slumpmässiga koordinater.

Var är jag Windows-telefon

Vi har nu två olika metoder varje rapporterande liknande observer samlingar. Så i OnLoaded metod vi välja vilken metod som ska användas och använda Prenumerera metod att koppla upp OnPositionChanged metod för att när den observerbara samlingen skjuter oss en ny koordinat. En annan mycket viktig sak är ObserveOnDispatcher metod, eftersom både den verkliga GPS och vår falska timer driva sina evenemang på en bakgrund tråd som vi behöver för att uppbringa samtalet UI tråden så att vi inte kommer att få ett undantag vid uppdatering av användargränssnittet.

Relaterade inlägg

  • WhatsApp BlackBerry I denna avancerade teknologiska värld, massor av senaste mobila applikationer spelar en extra roll i alla människors liv. Runt om i världen, kan ingen helt enkelt gå med ...

  • Bluetooth-teknik Grunderna Välkommen till Bluetooth 101. Här är de saker du behöver veta om Bluetooth-teknik. Bluetooth är en global standard för trådlös kommunikation som ansluter ...

  • Använda franska dictinary på din mobiltelefon Informationen på denna sida är främst avsedd för "äldre" stil mobiltelefoner. Om du har en iPhone eller modern smartphone. Du kan vara mer ...

  • De uSwitch Mobile Awards 2012 2012 s uSwitch Mobile Awards hölls på Cirkus i Londons Covent Garden den 14 november och visade en oförglömlig kväll firar det bästa av det ...

  • vad jag ska säga under sexting Vad är några flirtiga saker som jag kan säga under sexting? ChaCha Svar: Du kan be eller ge ut information om vad du bär eller wha. Letar efter 10 smutsiga sexting ...


Warning: include_once(/home/admin/web/swedish.mobilesbuzz.com/public_html/ins/aftercontent.txt): failed to open stream: No such file or directory in /home/admin/web/swedish.mobilesbuzz.com/public_html/var/var-r-jag-windows-telefon.php on line 114

Warning: include_once(): Failed opening '/home/admin/web/swedish.mobilesbuzz.com/public_html/ins/aftercontent.txt' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /home/admin/web/swedish.mobilesbuzz.com/public_html/var/var-r-jag-windows-telefon.php on line 114