<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Nick's .NET Travels</title>
    <description>Continually looking for the yellow brick road so I can catch me a wizard....</description>
    <link>http://nicksnettravels.builttoroam.com/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.NET 2.0.0.36</generator>
    <language>en-GB</language>
    <blogChannel:blogRoll>http://nicksnettravels.builttoroam.com/opml.axd</blogChannel:blogRoll>
    <blogChannel:blink>http://www.dotnetblogengine.net/syndication.axd</blogChannel:blink>
    <dc:creator>Nick Randolph</dc:creator>
    <dc:title>Nick's .NET Travels</dc:title>
    <geo:lat>-33.859970</geo:lat>
    <geo:long>151.211100</geo:long>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/NicksNetTravels" /><feedburner:info uri="nicksnettravels" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
      <title>Windows Phone App Manager</title>
      <description>&lt;p&gt;We’ve been working closely with the local enterprise sales team at Microsoft around the opportunities to use Windows Phone in the enterprise. Personally I think this is where Windows Phone is going to absolutely rule the roost – integration into Exchange, Sharepoint, Office apps, and of course device management through your favourite MDM solution. Something that comes up early in this discussion is “how do I build a company hub for my organisation?” Well we’ve recently released the first version of the Windows Phone App Manager to the Windows 8 store.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellpadding="0" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="210"&gt;         &lt;table cellpadding="0" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td width="210"&gt;                 &lt;p&gt;&lt;img src="http://wscont2.apps.microsoft.com/winstore/1x/79c9b98a-fac6-4ad8-aa22-99ca172f287e/Screenshot.109059.1000000.jpg" width="210" height="118" /&gt;&lt;/p&gt;               &lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;        &lt;td valign="top" width="390"&gt;         &lt;p&gt;Windows Phone App Manager app for Windows in the Windows Store&lt;/p&gt;          &lt;p&gt;&lt;a href="http://apps.microsoft.com/webpdp/app/bcc487fc-d810-4c83-ab17-e58785478a8f"&gt;http://apps.microsoft.com/webpdp/app/bcc487fc-d810-4c83-ab17-e58785478a8f&lt;/a&gt;&lt;/p&gt;          &lt;p&gt;Learn more about Windows Phone App Manager by Built to Roam Pty Ltd and download it from the Windows Store&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;We’ve also been working on a getting started guide – this is particularly important with this release as we’re still working through refining the UX so make it easier for companies to build their company hub.&lt;/p&gt;  &lt;div id="scid:8eb9d37f-1541-4f29-b6f4-1eea890d4876:35855e6c-1a24-483a-845f-658c83df2f53" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;&lt;p&gt;&lt;div&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-App-Manager_EC4A/Getting-Started-Guide.docx" target="_self"&gt;Getting Started Guide&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;&lt;/div&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/wN79rQAwTiY" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/wN79rQAwTiY/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2013/04/17/Windows-Phone-App-Manager.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=40de338b-37ff-4e61-b243-2771955bec59</guid>
      <pubDate>Wed, 17 Apr 2013 12:53:24 +0600</pubDate>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=40de338b-37ff-4e61-b243-2771955bec59</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=40de338b-37ff-4e61-b243-2771955bec59</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2013/04/17/Windows-Phone-App-Manager.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=40de338b-37ff-4e61-b243-2771955bec59</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=40de338b-37ff-4e61-b243-2771955bec59</feedburner:origLink></item>
    <item>
      <title>Windows Phone Developer Workshop</title>
      <description>&lt;h5&gt;&lt;b&gt;&lt;u&gt;Adelaide Windows Phone 8 Developers Workshop Fri/Sat, May 3&lt;sup&gt;rd&lt;/sup&gt; and 4&lt;sup&gt;th&lt;/sup&gt; &lt;/u&gt;&lt;/b&gt;&lt;/h5&gt;  &lt;p&gt;Calling all SA Adelaide based Mobile developers, Microsoft and Nokia are delighted to announce that we’ve have extended the Windows Phone 8 Developer series of workshops to now include Adelaide. &lt;/p&gt;  &lt;p&gt;Windows Phone 8 is a huge step forward, not only maintaining compatibility with existing Windows Phone apps, but embraces a number of core Windows 8 technologies, bringing significant performance improvements, support for managed and native C++ development, in app purchase, wallet, NFC, developer access to the Bluetooth and speech APIs, and more. See &lt;a href="http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/05/windows-phone-8-developer-platform-highlights.aspx"&gt;&lt;b&gt;Windows Phone 8 developer platform highlights&lt;/b&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This two day workshop is scheduled for Friday May 3&lt;sup&gt;rd&lt;/sup&gt; and Saturday May 4&lt;sup&gt;th&lt;/sup&gt;. The first day is a presentation day that will get you up to speed with the Windows Phone 8 developer platform. Day two (Saturday) is a hands on labs day to guide you through the experience of building Windows Phone apps.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;REGISTER &lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://wp.msdeveloper.com.au/?eventid=EED7C5EE-89F6-42E4-9477-B056CF368D65"&gt;Day 1 - Presentation Day&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://wp.msdeveloper.com.au/?eventid=EAE95E93-91A8-47D3-9364-757E43E8CBDC&amp;amp;at=twitter"&gt;Day 2 - Hands on Labs Day&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/4NVT16qhxWg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/4NVT16qhxWg/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2013/04/17/Windows-Phone-Developer-Workshop.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=cdcb5615-8db5-4676-91e6-609602f03e63</guid>
      <pubDate>Wed, 17 Apr 2013 12:44:17 +0600</pubDate>
      <category>Announcements</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=cdcb5615-8db5-4676-91e6-609602f03e63</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=cdcb5615-8db5-4676-91e6-609602f03e63</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2013/04/17/Windows-Phone-Developer-Workshop.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=cdcb5615-8db5-4676-91e6-609602f03e63</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=cdcb5615-8db5-4676-91e6-609602f03e63</feedburner:origLink></item>
    <item>
      <title>Authentication Issues with Windows Azure Mobile Services</title>
      <description>&lt;p&gt;Here are just a couple of gotchas I ran into whilst setting up a Windows Azure Mobile Service to accept login requests from all four providers: Microsoft Account, Facebook, Twitter, Google.&lt;/p&gt;  &lt;p&gt;Firstly, grab the site url for your mobile service – On the Dashboard tab the “Mobile Service Url” is on the right under “quick glance”&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_thumb.png" width="244" height="195" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Microsoft Account (&lt;a href="http://www.windowsazure.com/en-us/develop/mobile/how-to-guides/register-for-microsoft-authentication/"&gt;Instructions&lt;/a&gt;)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_3.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_thumb_3.png" width="481" height="66" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- The name of my application contained words that weren’t allowed. This includes trademarked words such as “Windows Phone”. Unfortunately this meant that when I attempted to set the Redirect URI&amp;#160; and hit Save, nothing appears to happen – the error is not visible as it’s on a different tab. Solution was to change the Application name, then hey presto it works.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Google (&lt;a href="http://www.windowsazure.com/en-us/develop/mobile/how-to-guides/register-for-google-authentication/"&gt;Instructions&lt;/a&gt;)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_4.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_thumb_4.png" width="303" height="239" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- Make sure you set the type to &lt;strong&gt;Web application&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;- When I created the client id I could only set the site/hostname. You actually need to go back and edit the settings to set the redirect uri to “https://[your mobile service].azure-mobile.net&lt;strong&gt;/login/google &lt;/strong&gt;(note the /login/google at the end)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Facebook&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_5.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_thumb_5.png" width="339" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- Check the website with Facebook login, and specify the site URL&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;          &lt;p&gt;Twitter&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_6.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Authentication-Issues-with-Windows-Azure_13AC4/image_thumb_6.png" width="347" height="103" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- You need to specify both the website url and the callback uri&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Hopefully this helps someone get up and running in less time than it took me!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/KN6DE0D7pA4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/KN6DE0D7pA4/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2013/03/14/Authentication-Issues-with-Windows-Azure-Mobile-Services.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=625d91b7-b849-4413-8c59-5e1144d98b70</guid>
      <pubDate>Thu, 14 Mar 2013 17:33:16 +0600</pubDate>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=625d91b7-b849-4413-8c59-5e1144d98b70</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=625d91b7-b849-4413-8c59-5e1144d98b70</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2013/03/14/Authentication-Issues-with-Windows-Azure-Mobile-Services.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=625d91b7-b849-4413-8c59-5e1144d98b70</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=625d91b7-b849-4413-8c59-5e1144d98b70</feedburner:origLink></item>
    <item>
      <title>Built to Roam Offices and Staff</title>
      <description>&lt;p&gt;It’s been an whirlwind start to the new year for Built to Roam. We’ve just got back from the US and so I thought it’d be a perfect opportunity to share some of the exciting things that are in the pipeline for Built to Roam this year:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;New Office&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;That’s right, we’re stepping out and now have an awesome office space located in North Sydney. This will allow us to be more productive and have a suitable work space for the team as we grow.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;New Staff&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Yes, you read it right, we’re growing. We’re super happy to have &lt;a href="http://www.windowsphone.com/en-AU/store/publishers?publisherId=Dave_Lasike"&gt;Dave Lasike&lt;/a&gt; (and &lt;a href="http://www.windowsphone.com/en-AU/store/publishers?publisherId=daveandanita"&gt;more apps&lt;/a&gt;) join us at Built to Roam.&amp;#160; There is so much interest in Windows Phone and Windows 8 that we’re going to need all hands on deck this year to make sure we continue to deliver amazing apps for both platforms.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;New Business&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In the past building amazing apps typically meant working with an external design team, whether internal to the customer we’re working with or another design studio. This has meant on a number of occasions working with the team at &lt;a href="http://automaticstudio.com.au/"&gt;Automatic Studio&lt;/a&gt;, lead by the &lt;strike&gt;Metro&lt;/strike&gt; Modern UI wizard, &lt;a href="https://twitter.com/shanemo"&gt;Shane Morris&lt;/a&gt;. We’re super proud to announce that we’ve worked together again, this time in the form of a new design and development agency, &lt;a href="http://pixelandsons.com"&gt;Pixel and Sons&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;New Opportunities&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If you thought last year was exciting with the release of Windows Phone 8 and Windows 8, you’re not alone. With momentum building for both platforms, this year will see a number of big name brands appear across the whole ecosystem. Our advice is don’t get left behind, make sure you contact us so that we can assist you take advantage of these new platforms and extend the reach of your product set.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/qMiV5sh1Hb8" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/qMiV5sh1Hb8/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2013/02/26/Built-to-Roam-Offices-and-Staff.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=781a3b12-76ad-49fc-bdfa-c64313057139</guid>
      <pubDate>Tue, 26 Feb 2013 04:49:31 +0600</pubDate>
      <category>Announcements</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=781a3b12-76ad-49fc-bdfa-c64313057139</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=781a3b12-76ad-49fc-bdfa-c64313057139</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2013/02/26/Built-to-Roam-Offices-and-Staff.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=781a3b12-76ad-49fc-bdfa-c64313057139</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=781a3b12-76ad-49fc-bdfa-c64313057139</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 Jumpstart Content and Samples</title>
      <description>&lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Videos via Channel 9       &lt;br /&gt;&lt;/strong&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Mod 01a: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-01a-Introducing-Windows-Phone-8-Development-Part-1"&gt;Introducing Windows Phone 8 Development Part 1&lt;/a&gt;    &lt;br /&gt;Mod 01b: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-01b-Introducing-Windows-Phone-8-Development-Part-2"&gt;Introducing Windows Phone 8 Development Part 2&lt;/a&gt;    &lt;br /&gt;Mod 02: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-02-Designing-Windows-Phone-8-Apps"&gt;Designing Windows Phone 8 Apps&lt;/a&gt;    &lt;br /&gt;Mod 03: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-03-Building-Windows-Phone-8-Apps"&gt;Building Windows Phone 8 Apps&lt;/a&gt;    &lt;br /&gt;Mod 04: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-04-Files-and-Storage-on-Windows-Phone-8"&gt;Files and Storage on Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 05: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-05-Windows-Phone-8-Application-Lifecycle"&gt;Windows Phone 8 Application Lifecycle&lt;/a&gt;    &lt;br /&gt;Mod 06: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-06-Background-Agents"&gt;Background Agents&lt;/a&gt;    &lt;br /&gt;Mod 07: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-07-Tiles-and-Lock-Screen-Notifications"&gt;Tiles and Lock Screen Notifications&lt;/a&gt;    &lt;br /&gt;Mod 08: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-08-Push-Notifications"&gt;Push Notifications&lt;/a&gt;    &lt;br /&gt;Mod 09: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-09-Using-Phone-Resources-in-Windows-Phone-8"&gt;Using Phone Resources in Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 10: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-10-App-to-App-Communication-in-Windows-Phone-8"&gt;App to App Communication in Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 11: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-11-Network-Communication-in-Windows-Phone-8"&gt;Network Communication in Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 12: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8"&gt;Proximity Sensors and Bluetooth in Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 13: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-13-Speech-Input-in-Windows-Phone-8"&gt;Speech Input in Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 14: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-14-Maps-and-Location-in-Windows-Phone-8"&gt;Maps and Location in Windows Phone 8&lt;/a&gt;    &lt;br /&gt;Mod 15: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-15-Wallet-Support"&gt;Wallet Support&lt;/a&gt;    &lt;br /&gt;Mod 16: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-16-In-App-Purchasing"&gt;In-App Purchasing&lt;/a&gt;    &lt;br /&gt;Mod 17: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-17-The-Windows-Phone-Store"&gt;The Windows Phone Store&lt;/a&gt;    &lt;br /&gt;Mod 18: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-18-Enterprise-App-Architecture"&gt;Enterprise App Architecture&lt;/a&gt;    &lt;br /&gt;Mod 19: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-19-Windows-Phone-8-and-Windows-8-Cross-Platform-Develop"&gt;Windows Phone 8 and Windows 8 Cross Platform Development&lt;/a&gt;    &lt;br /&gt;Mod 20: &lt;a href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-20-Mobile-Web"&gt;Mobile Web&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Samples&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 1, Initial Layout" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-8888f59b"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 1, Initial Layout&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 2, Styles and Alignment" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-fbe831e7"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 2, Styles and Alignment&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 3, Design Time Data" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-18b3f22a"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 3, Design Time Data&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 4, Data Binding" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-9bb43a0e"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 4, Data Binding&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 5, List Templates" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-0e52e51f"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 5, List Templates&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 6, Page Navigation" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-1b7c34e3"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 6, Page Navigation&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 7, Application Bar" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-11fc8968"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 7, Application Bar&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 8, Landscape Orientation" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-935da8c2"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 8, Landscape Orientation&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 9, Screen Resolutions" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-441004a4"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 9, Screen Resolutions&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 10, Localization" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-a657a96d"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 10, Localization&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Contoso Cookbook Step 11, Page Transitions" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-e3c411c7"&gt;Windows Phone 8 JumpStart- Contoso Cookbook Step 11, Page Transitions&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 4 Storage Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-bd041904"&gt;Windows Phone 8 JumpStart- Module 4 Storage Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 5 Application Lifecycle Demo" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-f8bd9013"&gt;Windows Phone 8 JumpStart- Module 5 Application Lifecycle Demo&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 6 Background Agents Demo" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-6b996d9e"&gt;Windows Phone 8 JumpStart- Module 6 Background Agents Demo&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 7 Tiles and Lockscreen Notifications Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-2b8a0d79"&gt;Windows Phone 8 JumpStart- Module 7 Tiles and Lockscreen Notifications Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 8 Push Notifications Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-ab6c839a"&gt;Windows Phone 8 JumpStart- Module 8 Push Notifications Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 9 Using Phone Resources Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-471a28c2"&gt;Windows Phone 8 JumpStart- Module 9 Using Phone Resources Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 10 App to App Communication" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-eb2ff510"&gt;Windows Phone 8 JumpStart- Module 10 App to App Communication&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 11 Networking Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-7b3fea2d"&gt;Windows Phone 8 JumpStart- Module 11 Networking Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 12 NFC and Bluetooth Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-af8408d4"&gt;Windows Phone 8 JumpStart- Module 12 NFC and Bluetooth Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 13 Speech Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-7ded227b"&gt;Windows Phone 8 JumpStart- Module 13 Speech Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 14 Location and Maps Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-b3ef6476"&gt;Windows Phone 8 JumpStart- Module 14 Location and Maps Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 15 Wallet Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-c2845fc9"&gt;Windows Phone 8 JumpStart- Module 15 Wallet Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 16 In-App Purchasing Demo" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-b24cedcd"&gt;Windows Phone 8 JumpStart- Module 16 In-App Purchasing Demo&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 17 Windows Phone Store Demos" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-0a0c47c3"&gt;Windows Phone 8 JumpStart- Module 17 Windows Phone Store Demos&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Module 19 Windows Phone 8 &amp;amp; Windows 8 Cross Platform" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-cb57359e"&gt;Windows Phone 8 JumpStart- Module 19 Windows Phone 8 &amp;amp; Windows 8 Cross Platform&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Managed App Calling Native Library" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-108965b9"&gt;Windows Phone 8 JumpStart- Managed App Calling Native Library&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- PhotoSnap" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-d40c89ac"&gt;Windows Phone 8 JumpStart- PhotoSnap&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 JumpStart- Location Tracker" href="http://code.msdn.microsoft.com/Windows-Phone-8-JumpStart-f5cd735e"&gt;Windows Phone 8 JumpStart- Location Tracker&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/qY2uNxxhs40" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/qY2uNxxhs40/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2013/01/15/Windows-Phone-8-Jumpstart-Content-and-Samples.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=1635d042-279f-46dc-b46a-7bc09d7437f8</guid>
      <pubDate>Tue, 15 Jan 2013 05:12:17 +0600</pubDate>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=1635d042-279f-46dc-b46a-7bc09d7437f8</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=1635d042-279f-46dc-b46a-7bc09d7437f8</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2013/01/15/Windows-Phone-8-Jumpstart-Content-and-Samples.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=1635d042-279f-46dc-b46a-7bc09d7437f8</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=1635d042-279f-46dc-b46a-7bc09d7437f8</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 SDK - Deploying Multiple Enterprise Applications</title>
      <description>&lt;p&gt;I’ve already talked about the basics of enterprise application deployment with Windows Phone 8, which you can find in the following two posts.&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 SDK- Enterprise Application Deployment" href="http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Application-Deployment.aspx"&gt;Windows Phone 8 SDK- Enterprise Application Deployment&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Windows Phone 8 SDK- Enterprise Applications (part 2)" href="http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Applications-(part-2).aspx"&gt;Windows Phone 8 SDK- Enterprise Applications (part 2)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In this post we’re going to look at how you can start to manage and deploy multiple enterprise applications. Of course, there will be some organisations who use an MDM provider (for example &lt;a href="http://silverbackmdm.com/"&gt;Silverback&lt;/a&gt;) which will facilitate the deployment of applications to specific groups of employees. However, there will be some organisations that elect not to use an MDM, and yet still want to deploy multiple enterprise applications. For this you can use some of the new APIs in Windows Phone 8 to enumerate installed applications and prompt for installation of applications.&lt;/p&gt;  &lt;p&gt;Let’s put this in a bit of context – a common starting point is to roll out a company hub style application. By this we mean a simple enterprise application (ie signed by the enterprise for internal distribution) which might list internal news, relevant links and a list of other enterprise applications that are available for installation. The company hub might also require the user to enter credentials in order to personalise these items (eg present only applications that the user should have access to)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8_F8ED/image.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Windows-Phone-8_F8ED/image_thumb.png" width="453" height="176" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If the user clicks on these applications there are a number of ways that the company hub can install the selected application. Assuming that the application is stored on a remote server you can simply launch the uri pointing to the xap file.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;private void InstallAppClick(object sender, RoutedEventArgs e)      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var url = new Uri(&amp;quot;http://mydomain.com/myapp.xap&amp;quot;);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Launcher.LaunchUriAsync(url);       &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Whilst this will work, assuming that the enterprise certificate that the application has been signed with is already installed on the device, it doesn’t provide a great experience for the user. Another alternative is to use the AddPackageAsync method on the InstallationManager.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;private async void InstallAppClick(object sender, RoutedEventArgs e)      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var url = new Uri(&amp;quot;http://mydomain.com/myapp.xap&amp;quot;);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var status = InstallationManager.AddPackageAsync(&amp;quot;MyApp&amp;quot;, url);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; status.Progress += UpdateProgress;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; await status;       &lt;br /&gt;}       &lt;br /&gt;private void UpdateProgress(IAsyncOperationWithProgress&amp;lt;PackageInstallResult, uint&amp;gt; asyncinfo, uint progressinfo)       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; // Update UI with progress       &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;The return value from the AddPackageAsync method can be used to retrieve installation progress information that can be displayed within the company hub whilst the application is being installed.&lt;/p&gt;  &lt;p&gt;Both these alternatives download the xap in clear form from the remote server. Whilst this might be ok if the user is on an intranet, it’s not a great solution if you want to make applications accessible to remote users (which you would hope would be the case since they’re mobile….). In this case you really need to ensure the application is encrypted or protected somehow to prevent the applications from being decompiled. The script for signing the applications does &lt;strong&gt;not&lt;/strong&gt; provide any level of protection – it simply invokes a native compile of the dlls and then signs both dlls and xap. As such you should consider applying your own level of protection, which in turn means we need an alternative method to install the applications via the company hub.&lt;/p&gt;  &lt;p&gt;One solution is to package the other applications into the company hub. Each application needs to be created and then signed using the enterprise certificate. They’re then added to the company hub project with the build action property set to Content – this ensures they’re packaged with the company hub. Once the company hub has been installed the user can select one of the applications packaged with the company hub for installation. Since the application isn’t downloaded there is no way to intercept it, so no further protection is required. This method again uses the AddPackageAsync but this time with a uri that points to a file packaged with the company hub (progress reporting has been omitted for brevity). Alternatively you can also use the Launcher.LaunchFileAsync with a reference to the file but again this doesn’t report on the installation progress. &lt;/p&gt;  &lt;p&gt;&lt;em&gt;private async void InstallAppClick(object sender, RoutedEventArgs e)      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var file = await StorageFile.GetFileFromApplicationUriAsync(new System.Uri(&amp;quot;ms-appx:///myapp.xap&amp;quot;));       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var fullSystemPath = new Uri(&amp;quot;file://&amp;quot; + file.Path);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; await InstallationManager.AddPackageAsync(&amp;quot;MyApp&amp;quot;, fullSystemPath);       &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;One thing to note here is the slightly unusual path syntax that is required by the AddPackageAsync method. It will &lt;strong&gt;not &lt;/strong&gt;work with either a relative uri or a uri starting with ms-appx or ms-appdata.&lt;/p&gt;  &lt;p&gt;The downside of this method is that you need to bundle all the other applications into the company hub, even if they’re not relevant to the current user. A better solution is to download an encrypted application from a remote server, decrypt it locally, and then install the application from isolated storage. In this post we won’t cover the first two steps, as this is up to the organisation as to how they wish to encrypt the application file and distribute the keys to the company hub application so it can decrypt the application file. The last step is actually similar to installing an application that is packaged with the company hub. However, this time the file is stored in isolated storage, which slightly changes the way the file path is constructed (you could also use new Uri(“ms-appdata://local/MyApp.xap”) rather than using the LocalFolder).&lt;/p&gt;  &lt;p&gt;&lt;em&gt;private async void InstallAppClick(object sender, RoutedEventArgs e)      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var storageFolder = ApplicationData.Current.LocalFolder;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var file = await storageFolder.GetFileAsync(&amp;quot;MyApp.xap&amp;quot;);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var fullSystemPath = new Uri(&amp;quot;file://&amp;quot; + file.Path);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; await InstallationManager.AddPackageAsync(&amp;quot;MyApp&amp;quot;, fullSystemPath);       &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;In this post you’ve seen how you can install additional enterprise applications from a company hub. In deciding which method to use you should consider both the sensitivity of the application logic and the risk of data being intercepted.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/Yd0HWl4A1vg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/Yd0HWl4A1vg/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/12/03/Windows-Phone-8-SDK-Deploying-Multiple-Enterprise-Applications.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=05d2a33e-a55e-4c97-9e1d-b5792c34b13e</guid>
      <pubDate>Mon, 03 Dec 2012 19:12:45 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=05d2a33e-a55e-4c97-9e1d-b5792c34b13e</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=05d2a33e-a55e-4c97-9e1d-b5792c34b13e</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/12/03/Windows-Phone-8-SDK-Deploying-Multiple-Enterprise-Applications.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=05d2a33e-a55e-4c97-9e1d-b5792c34b13e</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=05d2a33e-a55e-4c97-9e1d-b5792c34b13e</feedburner:origLink></item>
    <item>
      <title>DNS Client for Windows and Windows Phone</title>
      <description>&lt;p&gt;Don’t ask why, but I needed to be able to do a dns record lookup for a srv record from a Windows Phone application. I went looking for a library that could do this and came up with Phone Net Tools (&lt;a title="http://phonenettools.codeplex.com/" href="http://phonenettools.codeplex.com/"&gt;http://phonenettools.codeplex.com/&lt;/a&gt;) – this seems a great library but fairly rudimentary support for DNS queries. I also came across a great post by Rob Philpott on CodeProject (&lt;a title="http://www.codeproject.com/Articles/12072/C-NET-DNS-query-component" href="http://www.codeproject.com/Articles/12072/C-NET-DNS-query-component"&gt;http://www.codeproject.com/Articles/12072/C-NET-DNS-query-component&lt;/a&gt;) – it’s a bit dated and for legacy technologies (I needed to upgrade everything to even run it!). Whilst this option seemed to be more painful to update the architecture seemed to lead itself to being extended to support srv records. The net effect is there is yet another library on codeplex, this one dedicated to doing DNS lookups from a Windows 8 or Windows Phone application.&lt;/p&gt;  &lt;p&gt;At the moment I’ve only got the Windows Phone version uploaded to the &lt;a href="https://windns.codeplex.com/"&gt;Windows and Windows Phone DNS Library&lt;/a&gt;. It’s relatively simple to use:&lt;/p&gt;  &lt;p&gt;// create a DNS request    &lt;br /&gt;var request = new Request();&lt;/p&gt;  &lt;p&gt;var domain = &amp;quot;builttoroam.com&amp;quot;;    &lt;br /&gt;var type = DnsType.MX;     &lt;br /&gt;var dnsServer = IPAddress.Parse(&amp;quot;203.0.178.191&amp;quot;);&lt;/p&gt;  &lt;p&gt;// create a question for this domain and DNS CLASS    &lt;br /&gt;request.AddQuestion(new Question(domain, type, DnsClass.IN));&lt;/p&gt;  &lt;p&gt;// send it to the DNS server and get the response    &lt;br /&gt;//Response response = &lt;/p&gt;  &lt;p&gt;var resp = await Resolver.Lookup(request, dnsServer);    &lt;br /&gt;foreach (var answer in resp.Answers)     &lt;br /&gt;{     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Debug.WriteLine(&amp;quot;{0}&amp;quot;, answer.Record);&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;}&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/-rixm-SwtJs" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/-rixm-SwtJs/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/11/07/DNS-Client-for-Windows-and-Windows-Phone.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=28881c7d-336c-41bb-b038-3b1bcee07cf3</guid>
      <pubDate>Wed, 07 Nov 2012 11:02:27 +0600</pubDate>
      <category>Development</category>
      <category>Announcements</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=28881c7d-336c-41bb-b038-3b1bcee07cf3</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=28881c7d-336c-41bb-b038-3b1bcee07cf3</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/11/07/DNS-Client-for-Windows-and-Windows-Phone.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=28881c7d-336c-41bb-b038-3b1bcee07cf3</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=28881c7d-336c-41bb-b038-3b1bcee07cf3</feedburner:origLink></item>
    <item>
      <title>Develop for Windows Phone and Windows using Portable Class Library</title>
      <description>&lt;p&gt;In the past I wasn’t a big fan of the Portable Class Library as I felt it imposed more restrictions than necessary and would constrain/frustrate developers more than it would actually solve a problem. However, in recent times a couple of things have happened that have made this whole experience a lot better. &lt;/p&gt;  &lt;p&gt;Firstly, we no longer need to drag out VS2010 to do Windows Phone 7 development. The new Windows Phone 8 SDK plugs into VS2012 and allows for both WP7 and WP8 app development. This means that if you’re going to be targeting multiple versions of WP you can do so in the same solution.&lt;/p&gt;  &lt;p&gt;Next, the release of Microsoft.Bcl.Async on nuget – ok, you’re probably thinking what’s that? Well a while ago Microsoft published the Async programming CTP. Whilst it had a go-live license and could be used in your Windows Phone 7 project it was a hassle to install in VS2010 (due to a weird set of dependencies which were broken with subsequent updates to VS) and didn’t support VS2012 at all. The Microsoft.Bcl.Async package is the replacement for the Async CTP, allowing you to do asynchronous programming in WP7 apps. Of course, both Win8 and WP8 support async programming out of the box.&lt;/p&gt;  &lt;p&gt;Ok, on to using a Portable Class Library. The concept here is that you want to build a single, managed, library that can be referenced by applications targeting different platforms. Let’s walk through a simple example.&lt;/p&gt;  &lt;p&gt;We’re going to start by creating three different applications within the sample solution: SimplePCLTestApp.WP7, SimplePCLTestApp.WP8 and SimplePCLTestApp.Win8. As the project names suggest the projects should be targetting WP7, WP8 and Win8 respectively. We’re then going to also create a Portable Class Library called SimplePCL. Note, when you go to create the PCL you’ll see a prompt similar to the following image. This allows you to specify which frameworks your going to be targeting. In this case we’ll take the default options as we’re not going to be building for XBox.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Develop-for-Windows-Phone-and-Windows_A744/image.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Develop-for-Windows-Phone-and-Windows_A744/image_thumb.png" width="244" height="238" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The next thing to do is to add the Microsoft.Bcl.Async nuget package into the WP7 and PCL projects. The following image illustrates the package that you’re after.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Develop-for-Windows-Phone-and-Windows_A744/image_3.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Develop-for-Windows-Phone-and-Windows_A744/image_thumb_3.png" width="425" height="295" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Unfortunately at the moment when you attempt to add this package it won’t give you the option to add it to the PCL. It appears there is some incompatibilities with the current version of the nuget package for Microsoft.Bcl.Async and the PCL. Luckily it’s relatively easy to fix manually:&lt;/p&gt;  &lt;p&gt;&amp;gt; Unload the PCL project   &lt;br /&gt;&amp;gt; Right-click on the PCL project and select Edit SimplePCL.csproj    &lt;br /&gt;&amp;gt; Now, replace the following element&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;ItemGroup&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;!-- A reference to the entire .NET Framework is automatically included --&amp;gt;      &lt;br /&gt;&amp;lt;/ItemGroup&amp;gt;      &lt;br /&gt;      &lt;br /&gt;&lt;/em&gt;With&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;ItemGroup&amp;gt;     &lt;br /&gt; &amp;lt;Reference Include=&amp;quot;Microsoft.Threading.Tasks&amp;quot;&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;HintPath&amp;gt;..\packages\Microsoft.Bcl.Async.1.0.12-beta\lib\sl4-windowsphone71\Microsoft.Threading.Tasks.dll&amp;lt;/HintPath&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;/Reference&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;Reference Include=&amp;quot;Microsoft.Threading.Tasks.Extensions&amp;quot;&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;HintPath&amp;gt;..\packages\Microsoft.Bcl.Async.1.0.12-beta\lib\sl4-windowsphone71\Microsoft.Threading.Tasks.Extensions.dll&amp;lt;/HintPath&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;/Reference&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;Reference Include=&amp;quot;Microsoft.Threading.Tasks.Extensions.Phone&amp;quot;&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;HintPath&amp;gt;..\packages\Microsoft.Bcl.Async.1.0.12-beta\lib\sl4-windowsphone71\Microsoft.Threading.Tasks.Extensions.Phone.dll&amp;lt;/HintPath&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;/Reference&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;Reference Include=&amp;quot;System.Runtime&amp;quot;&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;HintPath&amp;gt;..\packages\Microsoft.Bcl.1.0.11-beta\lib\sl4-windowsphone71\System.Runtime.dll&amp;lt;/HintPath&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;/Reference&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;Reference Include=&amp;quot;System.Threading.Tasks&amp;quot;&amp;gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;HintPath&amp;gt;..\packages\Microsoft.Bcl.1.0.11-beta\lib\sl4-windowsphone71\System.Threading.Tasks.dll&amp;lt;/HintPath&amp;gt;      &lt;br /&gt;&amp;#160; &amp;lt;/Reference&amp;gt;      &lt;br /&gt; &amp;lt;/ItemGroup&amp;gt;&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&amp;gt; Save, and reload the PCL project&lt;/p&gt;  &lt;p&gt;The last preparatory step is to add a reference to the PCL project to each of our applications. This is done as per normal by right-clicking the project, selecting Add Reference, and then selecting the PCL project from the solution node.&lt;/p&gt;  &lt;p&gt;We’re now ready to start writing some code. We’ll rename Class1 to ExampleClass and add the following code:&lt;/p&gt;  &lt;p&gt;public class ExampleClass:INotifyPropertyChanged {   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; private string name;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public string Name {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get { return name; }    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (Name == value) return;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; name = value;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OnPropertyChanged();    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public event PropertyChangedEventHandler PropertyChanged;    &lt;br /&gt;&amp;#160;&amp;#160; [NotifyPropertyChangedInvocator]    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; PropertyChangedEventHandler handler = PropertyChanged;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; private readonly ManualResetEvent sleepEvent = new ManualResetEvent(false);    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public async Task UpdateName(string newName)&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; await Task.Factory.StartNew(() =&amp;gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // This will sleep waiting for a signal that will never happen!    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; sleepEvent.WaitOne(1000);&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; });   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Name = newName;    &lt;br /&gt;&amp;#160;&amp;#160; }    &lt;br /&gt;}&lt;/p&gt;  &lt;p&gt;This simple class illustrates a couple of different things:&lt;/p&gt;  &lt;p&gt;- The use of INotifyPropertyChanged – almost essential for view models, which you will probably want to share across projects if you’re using MVVM. Note the OnPropertyChanged method uses the CallerMemberName attribute, rather than the property name having to be specified when the method is called.&lt;/p&gt;  &lt;p&gt;- The UpdateName method is an asynchronous method which launches a background task using Task.StartNew. This is to simulate some long running task (eg service call, or disk I/O). There is no support for Thread.Sleep in the PCL so we’ve used a workaround which involves waiting for a reset event that will never happen. &lt;/p&gt;  &lt;p&gt;- The Name property is updated after the background task has completed. If this method was invoked on the UI thread then it’s safe to update the Name property, since the PropertyChanged event also needs to be invoked on the UI thread to prevent a cross threading violation.&lt;/p&gt;  &lt;p&gt;We can then add the following code to the main page of each of our applications:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;protected async override void OnNavigatedTo(NavigationEventArgs e)     &lt;br /&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; base.OnNavigatedTo(e);&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;em&gt;&amp;#160;&amp;#160;&amp;#160; var example = new ExampleClass();     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; example.PropertyChanged+=ExamplePropertyChanged;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; example.Name = &amp;quot;Initial Name&amp;quot;;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Debug.WriteLine(&amp;quot;-------------------------&amp;quot;);      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; await example.UpdateName(&amp;quot;Updated Name&amp;quot;);      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Debug.WriteLine(&amp;quot;-------------------------&amp;quot;);      &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;private void ExamplePropertyChanged(object sender, PropertyChangedEventArgs e)     &lt;br /&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var ex = sender as ExampleClass;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Debug.WriteLine(ex.Name);      &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Running this, in all cases, should yield the following Debug output (you may see some additional assembly/type loading information as well):&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Initial Name     &lt;br /&gt;-------------------------      &lt;br /&gt;Updated Name      &lt;br /&gt;-------------------------&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;And there you have it. An example of how you can use a Portable Class Library to abstract our your platform independent code.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/MWPbIaQNKBY" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/MWPbIaQNKBY/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/11/04/Develop-for-Windows-Phone-and-Windows-using-Portable-Class-Library.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=16d88e4b-dc52-4329-9b65-1d37dde644b9</guid>
      <pubDate>Sun, 04 Nov 2012 07:50:01 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=16d88e4b-dc52-4329-9b65-1d37dde644b9</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=16d88e4b-dc52-4329-9b65-1d37dde644b9</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/11/04/Develop-for-Windows-Phone-and-Windows-using-Portable-Class-Library.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=16d88e4b-dc52-4329-9b65-1d37dde644b9</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=16d88e4b-dc52-4329-9b65-1d37dde644b9</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 SDK: Accessing Content from an SD Card</title>
      <description>&lt;p&gt;Before you get all excited and worked up about the fact that you can use an SD card with the new Windows Phone SDK there are a couple of limitations that you need to be aware of. Keep in mind that one of the primary scenarios that was being solved was the distribution of apps (errr, did I mention apps…. this is limited to Enterprise apps) and content, rather than being an extension to the device storage.&lt;/p&gt;  &lt;p&gt;- You can only access file types that you’ve registered for (this excludes the standard file format – which is a bit nasty if you want your app to say process images or documents supplied on an SD card).&lt;/p&gt;  &lt;p&gt;- You can only read from SD card. &lt;/p&gt;  &lt;p&gt;Ok, with these limitations in mind, let’s take a shot at reading from an SD card.&lt;/p&gt;  &lt;p&gt;First up, we need to get an SD card (oh and a real Windows Phone 8 device to work with) and put some content on it. In this scenario we’re going to use a sqlite database called mydata.sqlite. I simply inserted the Micro SD card, using an SD card adapter, into my laptop and copied across the existing sqlite file. I then inserted the card into my Windows Phone 8 device.&lt;/p&gt;  &lt;p&gt;Next, I opened my Windows Phone 8 project and added a couple of nuget packages. These are only required if you’re using sqlite, if you’re using some other file type, you don’t need to worry about these packages.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;wp7sqlite – &lt;/strong&gt;This is a managed implementation of sqlite      &lt;br /&gt;&lt;strong&gt;sqlite-net – &lt;/strong&gt;This is a super-easy wrapper that you can use in order to access the content.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Accessing-Content-fr_14ACF/image.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Accessing-Content-fr_14ACF/image_thumb.png" width="293" height="97" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Unfortunately, whilst these two packages were designed to work together, for some reason the versions that are in nuget are incompatible, requiring some minor modifications to get them to work. Luckily this is mostly a matter of replacing “out” with “ref” in a couple of methods.&lt;/p&gt;  &lt;p&gt;The next thing to do is to declare our intent to a) read from the SD card and b) what file types we want to be able to access. Double-click the WMAppManifest.xml to open the designer, switch to the Capabilities tab and check the ID_CAP_REMOVABLE_STORAGE capability.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Accessing-Content-fr_14ACF/image_3.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Accessing-Content-fr_14ACF/image_thumb_3.png" width="313" height="371" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Close the manifest designer, right-click on the WMAppManifest.xml file and select Open With. Select XML (Text) Editor and hit Ok. You need to add a FileTypeAssociation element into the Extensions element. If Extensions doesn’t exist, you may need to create that too – it needs to sit after the Tokens element but before the ScreenResolutions element.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;lt;/Tokens&amp;gt;     &lt;br /&gt;&lt;strong&gt;&amp;#160;&amp;#160; &amp;lt;Extensions&amp;gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;FileTypeAssociation Name=&amp;quot;sqlite&amp;quot; TaskID=&amp;quot;_default&amp;quot; NavUriFragment=&amp;quot;fileToken=%s&amp;quot;&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;SupportedFileTypes&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;FileType ContentType=&amp;quot;application/sqlite&amp;quot;&amp;gt;.sqlite&amp;lt;/FileType&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/SupportedFileTypes&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/FileTypeAssociation&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160; &amp;lt;/Extensions&amp;gt;        &lt;br /&gt;&lt;/strong&gt;&amp;#160;&amp;#160; &amp;lt;ScreenResolutions&amp;gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Now all that’s left is to write some code in order to access the content from the sd card. If you’re simply going to read from the files you can do so in situ. However, in this case we’re eventually going to want to write to the file, so we’re going to copy it to Isolated Storage first.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;// Connect to the current SD card.     &lt;br /&gt;var sdCard = (await ExternalStorage.GetExternalStorageDevicesAsync()).FirstOrDefault();&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;var routeFiles = await sdCard.GetFileAsync(&amp;quot;mydata.sqlite&amp;quot;);     &lt;br /&gt;using (var source = await routeFiles.OpenForReadAsync())      &lt;br /&gt;using (      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; var target = IsolatedStorageFile.GetUserStoreForApplication()      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; .OpenFile(&amp;quot;writeablecopy.sqlite&amp;quot;, FileMode.Create, FileAccess.Write))      &lt;br /&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; await source.CopyToAsync(target);      &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;var db = new SQLiteAsyncConnection(&amp;quot;writeablecopy.sqlite&amp;quot;);     &lt;br /&gt;var existing = await db.QueryAsync&amp;lt;MyDataObject&amp;gt;(&amp;quot;select * from data&amp;quot;);      &lt;br /&gt;var data = existing.ToArray();&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Don’t forget you’ll want to add appropriate error detection and check that an SD card even exists before you attempt to read from it. For those following the sqlite portion, the MyDataObject class is a relatively simply class, the sqlite-net wrapper handles the conversion between the sqlite data and the .net types:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;public class MyDataObject     &lt;br /&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; [PrimaryKey, AutoIncrement]      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public int Id { get; set; }      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public string Name { get; set; }      &lt;br /&gt;}&lt;/em&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/0Pyn6DlivEE" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/0Pyn6DlivEE/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/11/04/Windows-Phone-8-SDK-Accessing-Content-from-an-SD-Card.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=ebc654c2-5554-4961-91fb-e7930ad5df46</guid>
      <pubDate>Sun, 04 Nov 2012 04:20:55 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=ebc654c2-5554-4961-91fb-e7930ad5df46</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=ebc654c2-5554-4961-91fb-e7930ad5df46</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/11/04/Windows-Phone-8-SDK-Accessing-Content-from-an-SD-Card.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=ebc654c2-5554-4961-91fb-e7930ad5df46</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=ebc654c2-5554-4961-91fb-e7930ad5df46</feedburner:origLink></item>
    <item>
      <title>Cancel My Newspaper Subscription: Would a Real Journalist Please Stand Up!</title>
      <description>&lt;p&gt;Over the last 48 hours Microsoft has launched &lt;a href="http://www.microsoft.com/en-us/news/presskits/windowsphone/liveevent.aspx"&gt;Windows Phone 8&lt;/a&gt; (&lt;a href="http://www.microsoft.com/en-us/news/presskits/windowsphone/"&gt;press kit here&lt;/a&gt;) and the developer tools, the &lt;a href="http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/10/30/announcing-the-new-windows-phone-8-developer-platform.aspx"&gt;Windows Phone 8 SDK&lt;/a&gt;. Unfortunately there seems to be a spate of bad journalist here in Australia. Rather than actually spending time the platform they insist on quoting other, somewhat biased, journalist. Specifically this piece by Ben Grubb at SMH (&lt;a title="http://www.smh.com.au/digital-life/mobiles/windows-phone-8-cant-catch-big-two-20121030-28hed.html" href="http://www.smh.com.au/digital-life/mobiles/windows-phone-8-cant-catch-big-two-20121030-28hed.html"&gt;http://www.smh.com.au/digital-life/mobiles/windows-phone-8-cant-catch-big-two-20121030-28hed.html&lt;/a&gt;). Let&amp;rsquo;s drill in and see what Ben &lt;span style="text-decoration: line-through;"&gt;said&lt;/span&gt; quoted:&lt;/p&gt;
&lt;p&gt;- First, he states that Microsoft is so far behind Android and iOS that it sees RIM as it&amp;rsquo;s main rival. This comment is completely out of context and he provides no actual basis. It&amp;rsquo;s a reality that RIM is the closest in market share, so of course they are the next target in terms of just acquiring market share. This in itself doesn&amp;rsquo;t mean that Microsoft isn&amp;rsquo;t looking to capture a much larger market share. If you look at device features, variety, developer platform/tools etc, Microsoft isn&amp;rsquo;t lagging. In terms of apps, there is a way to go before we get to where Android or iOS is but that&amp;rsquo;s a result of how long the platform has been around more than anything.&lt;/p&gt;
&lt;p&gt;- Next, he says that analysts are saying Microsoft is wrong and has no hope&amp;hellip;. Really, again who said this. If this is what you believe, then how about putting your name to this comment.&lt;/p&gt;
&lt;p&gt;- It&amp;rsquo;s great that the only quotes from Microsoft is about how hard it is to compete in a market that&amp;rsquo;s heavily saturated by the incumbent platforms. Well duh! this isn&amp;rsquo;t news. How about giving us a run down on all the new features of Windows Phone 8, instead of boring us with the obvious.&lt;/p&gt;
&lt;p&gt;- I&amp;rsquo;m not going to bore you with any more of the quotes, rather than any useful commentary that Ben could have offered if he&amp;rsquo;d actually bothered to use a Windows Phone 8 device. However I&amp;rsquo;ll leave you with one last example. Ben quotes Joseph Sweeney of IBRS who has made the comment that he didn&amp;rsquo;t &amp;ldquo;really see much new&amp;rdquo;. Hmmm, and adding a fifth row of icons on the iphone 5 was a ground breaking UI change was it. Here&amp;rsquo;s a list of some of the changes that are in Windows Phone 8 (I&amp;rsquo;ll leave it to you to work out whether you think they&amp;rsquo;re new or not):&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;* Live Tiles &amp;ndash; this in itself is not new. However, apps can now take advantage of three different sizes, the ability to flip and cycle content through the tiles.&lt;/p&gt;
&lt;p&gt;* Kid&amp;rsquo;s corner &amp;ndash; an isolated area of the phone where kids can play without parents worrying about their data or wallet being compromised.&lt;/p&gt;
&lt;p&gt;* Lock screen &amp;ndash; an app can surface content and information directly to the lock screen&lt;/p&gt;
&lt;p&gt;* VOIP &amp;ndash; the integration of Skype (and other third party VOIP apps) is at a low level, making it ultra efficient (ie won&amp;rsquo;t drain your battery) and always on (so you can always receive chat and calls)&lt;/p&gt;
&lt;p&gt;* Rooms &amp;ndash; an area where you can share content with a group of people&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration: line-through;"&gt;* Wallet &lt;/span&gt;- I originally had this in here but the other smartphone platforms are all doing their own interpretation of this so it's not really new.&lt;/p&gt;
&lt;p&gt;And this is just to cover some of the consumer features that I believe add to an already awesome phone platform. If you want to see an example of a journalist who has actually taken the time with a phone then read the following &lt;a title="http://www.informationweek.com/byte/personal-tech/slick-windows-phone-8-an-acquired-taste/240012565" href="http://www.informationweek.com/byte/personal-tech/slick-windows-phone-8-an-acquired-taste/240012565"&gt;http://www.informationweek.com/byte/personal-tech/slick-windows-phone-8-an-acquired-taste/240012565&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/0vdGWHzhG-Y" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/0vdGWHzhG-Y/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/10/31/Cancel-My-Newspaper-Subscription-Would-a-Real-Journalist-Please-Stand-Up!.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=5bc1852b-48a4-422a-b3c1-ddbfeb79d9f6</guid>
      <pubDate>Wed, 31 Oct 2012 09:21:00 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=5bc1852b-48a4-422a-b3c1-ddbfeb79d9f6</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=5bc1852b-48a4-422a-b3c1-ddbfeb79d9f6</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/10/31/Cancel-My-Newspaper-Subscription-Would-a-Real-Journalist-Please-Stand-Up!.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=5bc1852b-48a4-422a-b3c1-ddbfeb79d9f6</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=5bc1852b-48a4-422a-b3c1-ddbfeb79d9f6</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 SDK: Enterprise Applications (part 2)</title>
      <description>&lt;p&gt;In the &lt;a href="http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Application-Deployment.aspx"&gt;previous post&lt;/a&gt; we used the XapSignTool directly in order to sign the enterprise application. One of the changes introduced to Windows Phone is the ability for the Windows Phone store to distribute precompiled applications, making them run that much quicker. In order to take advantage of this for your enterprise applications you need to run the MDILXAPCompile tool which ships with the SDK. Luckily, the team have also provided a powershell command making it dead easy to precompile &lt;strong&gt;and&lt;/strong&gt; sign your application in one easy step.&lt;/p&gt;  &lt;p&gt;Firstly, you’ll need to run powershell. Depending on how your system is setup you’ll probably want to run it as administrator as you may need to change the execution policy. If you’re familiar with powershell you can probably skip these steps.&lt;/p&gt;  &lt;p&gt;Go to C:\Windows\System32\WindowsPowerShell\v1.0, right click on Powershell.exe and select Run as Administrator&lt;/p&gt;  &lt;p&gt;If you run into errors running the powershell script, with an error referring to execution policy, you can adjust the policy as follows (warning this will allow any script to run):&lt;/p&gt;  &lt;p&gt;&lt;em&gt; Set-ExecutionPolicy -ExecutionPolicy Unrestricted&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Change directories to the MDILXAPCompile tools folder within the SDK:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;cd ‘C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\MDILXAPCompile\’&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Run BuildMDILXap.ps1&lt;/p&gt;  &lt;p&gt;&lt;em&gt; .\BuildMDILXap.ps1 –xapfilename 'c:\temp\Provisioning\SimpleCompanyApp.xap' –pfxfilename 'c:\temp\companyappcert.p12' –password mypassword&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;The output should look like the following&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_A7A5/image.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_A7A5/image_thumb.png" width="1148" height="376" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/eo34bX0esKI" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/eo34bX0esKI/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Applications-(part-2).aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=563c0d86-c580-45a7-aa0d-6b605c153e28</guid>
      <pubDate>Wed, 31 Oct 2012 07:08:33 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=563c0d86-c580-45a7-aa0d-6b605c153e28</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=563c0d86-c580-45a7-aa0d-6b605c153e28</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Applications-(part-2).aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=563c0d86-c580-45a7-aa0d-6b605c153e28</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=563c0d86-c580-45a7-aa0d-6b605c153e28</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 SDK: Enterprise Application Deployment</title>
      <description>&lt;p&gt;This is a step by step guide to preparing your organisation so that you can sign and deploy enterprise applications.&lt;/p&gt;  &lt;h4&gt;Certificate Acquisition&lt;/h4&gt;  &lt;h5&gt;Get your Publisher ID/Symantec Id and Approver Email Address&lt;/h5&gt;  &lt;p&gt;First up you’re going to need your Publisher ID (also referred to as Symantec Id) and Approver Email Address. &lt;/p&gt;  &lt;p&gt;These can both be retrieved from your Dev Center account (Must be Company account type)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/image.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/image_thumb.png" width="536" height="430" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- Type (Blue box): This has to be Company&lt;/p&gt;  &lt;p&gt;- Symantec Id (Green box): This is your publisher Id or Symantec Id (as distinct from your Publisher GUID)&lt;/p&gt;  &lt;p&gt;- Email (Purple box): This is &lt;b&gt;not&lt;/b&gt; necessarily your approver email address&lt;/p&gt;  &lt;p&gt;Click Edit (under Contact info) and scroll to bottom of page&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image002.png"&gt;&lt;img title="clip_image002" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image002" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image002_thumb.png" width="525" height="249" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- Email address (Blue box): This is the approver email address&lt;/p&gt;  &lt;h5&gt;Request Certificate&lt;/h5&gt;  &lt;p&gt;Navigate to &lt;a href="https://products.websecurity.symantec.com/orders/enrollment/microsoftCert.do"&gt;https://products.websecurity.symantec.com/orders/enrollment/microsoftCert.do&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Enter Publisher ID and Approver Email Address&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image004.jpg"&gt;&lt;img title="clip_image004" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image004" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image004_thumb.jpg" width="532" height="409" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Complete Billing information   &lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="15"&gt;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;&lt;/td&gt;          &lt;td&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image005.jpg"&gt;&lt;img title="clip_image005" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image005" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image005_thumb.jpg" width="519" height="399" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image007.jpg"&gt;&lt;img title="clip_image007" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image007" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image007_thumb.jpg" width="522" height="567" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Agree to terms&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image009.jpg"&gt;&lt;img title="clip_image009" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image009" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image009_thumb.jpg" width="522" height="448" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;&lt;/h5&gt;  &lt;p&gt;Confirmation of order completion&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image011.jpg"&gt;&lt;img title="clip_image011" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image011" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image011_thumb.jpg" width="522" height="247" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Approve your Certificate Request&lt;/h5&gt;  &lt;p&gt;You’ll need to monitor the approver email address for “Enterprise Code Signing Certificate Order Approval”. If this is someone else in the organisation you &lt;b&gt;must&lt;/b&gt; warn them – if they receive this and accidentally click the “I Do Not Approve” option it will result in significant delays.&lt;/p&gt;  &lt;p&gt;Click appropriate link to website to review and approve/reject order&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image013.jpg"&gt;&lt;img title="clip_image013" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image013" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image013_thumb.jpg" width="522" height="291" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click “I Approve” button&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image014.png"&gt;&lt;img title="clip_image014" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image014" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image014_thumb.png" width="522" height="475" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Confirmation of approval&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image015.png"&gt;&lt;img title="clip_image015" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image015" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image015_thumb.png" width="522" height="227" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;&lt;/h5&gt;  &lt;h5&gt;Retrieve your Certificate&lt;/h5&gt;  &lt;p&gt;You should receive confirmation email that the order has been approved. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image016.png"&gt;&lt;img title="clip_image016" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image016" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image016_thumb.png" width="522" height="219" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Follow the link to retrieve the certificate. This should be done on the same computer and in same browser that the initial request was made. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image018.jpg"&gt;&lt;img title="clip_image018" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image018" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image018_thumb.jpg" width="522" height="175" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image020.jpg"&gt;&lt;img title="clip_image020" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image020" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image020_thumb.jpg" width="522" height="136" /&gt;&lt;/a&gt;    &lt;br /&gt;Click Continue to retrieve the certifcate&lt;/p&gt;  &lt;p&gt;Review certificates for the browser. Eg Firefox it’s in Options &amp;gt; Advanced &amp;gt; View Certificates&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image022.jpg"&gt;&lt;img title="clip_image022" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image022" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image022_thumb.jpg" width="522" height="178" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click Backup and save the certificate (eg companyappcert.p12 or companyappcert.pfx) complete with private key (you need to set a password)&lt;/p&gt;  &lt;p&gt;Open Certificate Manager management console (Start &amp;gt; Run &amp;gt; Certmgr.msc) and confirm that certificate exists &lt;b&gt;and&lt;/b&gt; that the full Certification Path exists. This is a common error – only the leaf node is exported. Make sure you have the full path as illustrated in the screenshot below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image024.jpg"&gt;&lt;img title="clip_image024" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image024" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image024_thumb.jpg" width="420" height="522" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;Signing and Deploying Applications&lt;/h4&gt;  &lt;h5&gt;Create Application&lt;/h5&gt;  &lt;p&gt;Create your application as normal. When you want to deploy your application, take a copy of the XAP file that can be located in the \Bin\Release folder of your application.&lt;/p&gt;  &lt;h5&gt;Sign Application&lt;/h5&gt;  &lt;p&gt;Open “Developer Command Prompt for VS2012”. &lt;/p&gt;  &lt;p&gt;Warning: Make sure you open the correct command prompt as not all of them have the same environment parameters set. This may prevent some of the tools running correctly.&lt;/p&gt;  &lt;p&gt;Run the XapSignTool supplying the name of the XAP file as a parameter:&lt;/p&gt;  &lt;p&gt;&amp;quot;C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XapSignTool\XapSignTool.exe&amp;quot; sign /v c:\temp\Provisioning\SimpleCompanyApp.xap&lt;/p&gt;  &lt;p&gt;Note:&lt;/p&gt;  &lt;p&gt;/v Indicates verbose output – this will be necessary if you have multiple certificates that could be used for signing (which is more than likely)&lt;/p&gt;  &lt;p&gt;The next step can be skipped if signing completed correctly. If there are multiple certificates found you’ll need to identify which one you want to use (hence the /v option so that it lists them)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image025.png"&gt;&lt;img title="clip_image025" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image025" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image025_thumb.png" width="522" height="302" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Locate the Symantec Enterprise Mobile CA for Microsoft and copy the SHA1 Hash value (right-click command window and select Mark, select SHA1 value and press Enter to copy value).&lt;/p&gt;  &lt;p&gt;Now run XapSignTool again with SHA1 hash value specified&lt;/p&gt;  &lt;p&gt;&amp;quot;C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XapSignTool\XapSignTool.exe&amp;quot; sign /v /sha1 XXXX……hash value….......XXXX c:\temp\Provisioning\SimpleCompanyApp.xap&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image027.jpg"&gt;&lt;img title="clip_image027" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image027" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image027_thumb.jpg" width="522" height="403" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If successfully run then the original XAP will be replaced by the signed XAP. This file can be hosted on a server for downloading directly to device. Should be protected by credentials and available only over SSL. Whilst it is signed it is &lt;b&gt;not&lt;/b&gt; encrypted so can be decompiled.&lt;/p&gt;  &lt;p&gt;Warning: The permissions on the file may be changed as part of this process. You may need to reset permissions on the file in order for it to be able to be downloaded to the device.&lt;/p&gt;  &lt;h5&gt;Generate Application Enrolment Token&lt;/h5&gt;  &lt;p&gt;From command prompt run AetGenerator (first parameter is the backed up certificate; second parameter is corresponding password).&lt;/p&gt;  &lt;p&gt;&amp;quot;c:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\AETGenerator\AetGenerator.exe&amp;quot; companyappcert.p12 mypassword&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image028.png"&gt;&lt;img title="clip_image028" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image028" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image028_thumb.png" width="522" height="71" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Deployment of Application Enrolment Token&lt;/h5&gt;  &lt;p&gt;This can be emailed to the device as an attachment&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image030.jpg"&gt;&lt;img title="clip_image030" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image030" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image030_thumb.jpg" width="254" height="460" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click on attachment to download. Once downloaded, click on attachment again to open.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image031.png"&gt;&lt;img title="clip_image031" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image031" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image031_thumb.png" width="254" height="454" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Deployment of Signed Application&lt;/h5&gt;  &lt;p&gt;Open url of hosted XAP file in Internet Explorer&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image033.jpg"&gt;&lt;img title="clip_image033" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image033" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image033_thumb.jpg" width="254" height="453" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When prompted confirm installation by clicking Install. Application will then install silently (&lt;b&gt;unlike&lt;/b&gt; Store that takes the user to where the application is installed in applications list).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image034.png"&gt;&lt;img title="clip_image034" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image034" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image034_thumb.png" width="254" height="456" /&gt;&lt;/a&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image036.jpg"&gt;&lt;img title="clip_image036" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image036" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Enterprise-Applicati_9D03/clip_image036_thumb.jpg" width="254" height="459" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/iM-bjaiUDu8" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/iM-bjaiUDu8/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Application-Deployment.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=32c6330a-9741-409a-91d2-2265902d4a33</guid>
      <pubDate>Wed, 31 Oct 2012 06:34:33 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=32c6330a-9741-409a-91d2-2265902d4a33</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=32c6330a-9741-409a-91d2-2265902d4a33</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Enterprise-Application-Deployment.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=32c6330a-9741-409a-91d2-2265902d4a33</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=32c6330a-9741-409a-91d2-2265902d4a33</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 SDK: Debugging your Application</title>
      <description>&lt;p&gt;Depending on whether your application targets WP7 or WP8 you’ll see different options in the devices dropdown. Since it is possible to run WP7 devices on both WP7 and WP8 devices you’ll see additional options for WP7 targeted applications (right image).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb.png"&gt;&lt;img title="image_thumb" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb_thumb.png" width="234" height="179" /&gt;&lt;/a&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb1.png"&gt;&lt;img title="image_thumb1" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb1" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb1_thumb.png" width="231" height="218" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In the same way that you should always test your application on both the emulator and a real device, for a WP7 application you should test on both the wp7 and wp8 emulators, and ideally both wp7 and wp8 devices. In fact with the new SDK the test matrix just got significantly larger as you need to also test the 720p emulator (I’m less worried about the WXGA emulator since in theory it should just scale up from WVGA – the only thing to watch is that images don’t pixelate).&lt;/p&gt;  &lt;p&gt;If you didn’t already realise, the new emulator images are actual hyper-v virtual machines. This means that they will appear in Hyper-V Manager. Although, I wouldn’t recommend attempting to tweak the images via the manager!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb3.png"&gt;&lt;img title="image_thumb3" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb3" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb3_thumb.png" width="500" height="124" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The Additional Tools window includes a Network tab, although in my case it’s a little confusing because there are four adapters. Whilst I haven’t been able to get Fiddler to work with the new emulators it does appear that lower level tools such as Wireshark can be used to monitor traffic – it’s useful to see what the IP address of the emulator is via the Network pane so that you can filter the traffic.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb5.png"&gt;&lt;img title="image_thumb5" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb5" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb5_thumb.png" width="330" height="292" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In the Windows Phone 8 SDK there is another tool that can really assist with debugging applications and their behaviour when interrupted. The Tools menu contains a link to the Simulation Dashboard.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb8.png"&gt;&lt;img title="image_thumb8" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb8" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb8_thumb.png" width="439" height="125" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The Simulation Dashboard (adjusts the currently selected emulator in the device dropdown) allows you to monitor the network speed and signal strength. It also lets you trigger the lock screen and a reminder.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb10.png"&gt;&lt;img title="image_thumb10" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb10" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb10_thumb.png" width="237" height="546" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Being able to trigger a reminder will aid in debugging your application, or game, when it is partially obscured, rather than simply when the user navigates away from your application.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb7.png"&gt;&lt;img title="image_thumb7" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb7" src="http://blogimages.builttoroam.com/c249f9e10a8c_6CDC/image_thumb7_thumb.png" width="243" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/VhUDWsJ7X8c" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/VhUDWsJ7X8c/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Debugging-your-Application.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=266c32f7-895d-4df3-9db6-522522e3d62b</guid>
      <pubDate>Wed, 31 Oct 2012 02:45:16 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=266c32f7-895d-4df3-9db6-522522e3d62b</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=266c32f7-895d-4df3-9db6-522522e3d62b</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Debugging-your-Application.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=266c32f7-895d-4df3-9db6-522522e3d62b</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=266c32f7-895d-4df3-9db6-522522e3d62b</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8: New Project Structure</title>
      <description>&lt;p&gt;In the previous post you would have seen that you can now select with a WP7 or WP8 target when creating a new project with the Windows Phone 8 SDK. With earlier SDK versions the choice of target platform made very little difference to the project structure. Now, there are some substantial differences that you should take note of. The following images illustrate the project structure for Windows Phone 7.1 (left) and Windows Phone 8 (right) projects.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/5d8bcac51dc1_B65A/image.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/5d8bcac51dc1_B65A/image_thumb.png" width="244" height="232" /&gt;&lt;/a&gt;&lt;a href="http://blogimages.builttoroam.com/5d8bcac51dc1_B65A/image_3.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/5d8bcac51dc1_B65A/image_thumb_3.png" width="245" height="373" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here’s some of my observations:&lt;/p&gt;  &lt;p&gt;- There is no splash screen image in the template. Actually WP8 does use the same splashscreen mechanism, requiring the file SplashScreenImage.jpg. You can also provide high resolution versions of the splash screen image which need to be named appropriately (see documentation for details). My guess is that because WP8 application start up so quickly (through a combination of improved runtime and precompilation of assemblies etc), the thinking is that the splash screen is not necessary any more.&lt;/p&gt;  &lt;p&gt;- ApplicationIcon has been moved into the Assets folder, recognising that most developers like to organise images etc into a sub folder to make it easier to manage files within a project&lt;/p&gt;  &lt;p&gt;- Background image has been replaced by a series of tile images (in the Assets\Tiles folder). WP8 supports small, regular and large tiles, as well as flip and cyclic templates. The series of tiles gives you a starting point to working with the different tile formats.&lt;/p&gt;  &lt;p&gt;- AlignmentGrid (located in the Assets folder) is an overlay that you can display on any page to see if your controls/text align correctly. Alignment is an important aspect of fit and finish of an application, and is all too often neglected. The result is an application looks unfinished or off balance. You’ll see in MainPage.xaml that there is a element which you can uncomment in order to display this image. Note: IsHitTestVisible is set to False to ensure it doesn’t affect the way that your application operates. You should also take note of the comment in the XAML which indicates you may need to adjust the Margin depending on whether you have the SystemTray visible or not.&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;!--&amp;lt;Image Source=&amp;quot;/Assets/AlignmentGrid.png&amp;quot; VerticalAlignment=&amp;quot;Top&amp;quot; Height=&amp;quot;800&amp;quot; Width=&amp;quot;480&amp;quot; Margin=&amp;quot;0,-32,0,0&amp;quot; Grid.Row=&amp;quot;0&amp;quot; Grid.RowSpan=&amp;quot;2&amp;quot; IsHitTestVisible=&amp;quot;False&amp;quot; /&amp;gt;—&amp;gt;&lt;/p&gt;  &lt;p&gt;- AppResources/LocalizedStrings. With the new support for right-to-left text it’s become important for developers to know how to globalize/localize their applications. One step in Globalizing your application is moving string literals out into a resource file (ie AppResources.resx). These strings can be referenced via the wrapper class, LocalizedStrings, which is created as a static resource in App.xaml&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;&amp;lt;Application.Resources&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;local:LocalizedStrings xmlns:local=&amp;quot;clr-namespace:PhoneApp16&amp;quot; x:Key=&amp;quot;LocalizedStrings&amp;quot;/&amp;gt;         &lt;br /&gt;&amp;lt;/Application.Resources&amp;gt;&lt;/em&gt;       &lt;br /&gt;These strings can then be localized by creating appropriate resource files for each different language you want to support within your application. Depending on the language specified on the user’s Windows Phone, the most appropriate language will be used within the application.&lt;/p&gt;    &lt;p&gt;One last observation is that the list of References has changed. Microsoft has recognised that developers shouldn’t have to add/remove assemblies that are part of the .NET Framework. As such, instead of seeing individual assemblies, developers now see just the frameworks that are references (see below image). &lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/5d8bcac51dc1_B65A/image_4.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://blogimages.builttoroam.com/5d8bcac51dc1_B65A/image_thumb_4.png" width="211" height="59" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/LbNPzIbzK3M" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/LbNPzIbzK3M/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-New-Project-Structure.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=4eb82cfe-a7e6-40e5-a5ac-3509e9507da0</guid>
      <pubDate>Wed, 31 Oct 2012 02:43:31 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=4eb82cfe-a7e6-40e5-a5ac-3509e9507da0</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=4eb82cfe-a7e6-40e5-a5ac-3509e9507da0</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-New-Project-Structure.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=4eb82cfe-a7e6-40e5-a5ac-3509e9507da0</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=4eb82cfe-a7e6-40e5-a5ac-3509e9507da0</feedburner:origLink></item>
    <item>
      <title>Windows Phone 8 SDK: Creating a New Application</title>
      <description>&lt;p&gt;It goes without saying that the starting point for any project is going to be the new project dialog. We are of course talking about Visual Studio 2012, where you’ll find all the Windows Phone 8 SDK goodness. What some people don’t realise is that you can do the same thing (ie create projects) in Blend. However, I find Blend to be obnoxious when it comes to file management and dealing with project structure. This is the one reason why I always start in Visual Studio – get your project/solution structure right, and then invite the designers into the room.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Creating-a-New-Appli_6C50/image_thumb1.png"&gt;&lt;img title="image_thumb1" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb1" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Creating-a-New-Appli_6C50/image_thumb1_thumb.png" width="477" height="331" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;New Project Dialog&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The project templates in New Project Dialog, as you can see, haven’t changed much with the exception that in addition to a XAML/XNA template, there is also a XAML/Direct3D. With Windows Phone 8 we can now write native code to be part, or all, of our application or game.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Creating-a-New-Appli_6C50/image_thumb4.png"&gt;&lt;img title="image_thumb4" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb4" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Creating-a-New-Appli_6C50/image_thumb4_thumb.png" width="481" height="334" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Native Code Project Templates&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;There are also a number of native project templates which you can use to create all or part of your project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Creating-a-New-Appli_6C50/image_thumb6.png"&gt;&lt;img title="image_thumb6" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image_thumb6" src="http://blogimages.builttoroam.com/Windows-Phone-8-SDK-Creating-a-New-Appli_6C50/image_thumb6_thumb.png" width="364" height="170" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Choosing the Target Platform&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Most of the managed project templates you’ll be prompted to choose which platform you wish to target. Clearly if you’re making use of native code, you’ll only be able to target Windows Phone 8. One thing to note is that if you target Windows Phone 7.1 your application will run on both WP7 and WP8 devices but of course, you won’t be able to access any of the new functionality.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NicksNetTravels/~4/9ZfFvjXg_uY" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/NicksNetTravels/~3/9ZfFvjXg_uY/post.aspx</link>
      <author>nick@builttoroam.com</author>
      <comments>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Creating-a-New-Application.aspx#comment</comments>
      <guid isPermaLink="false">http://nicksnettravels.builttoroam.com/post.aspx?id=a16e658d-07df-409f-845a-53cfcf645ab0</guid>
      <pubDate>Wed, 31 Oct 2012 02:42:26 +0600</pubDate>
      <category>Development</category>
      <dc:publisher>nick</dc:publisher>
      <pingback:server>http://nicksnettravels.builttoroam.com/pingback.axd</pingback:server>
      <pingback:target>http://nicksnettravels.builttoroam.com/post.aspx?id=a16e658d-07df-409f-845a-53cfcf645ab0</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://nicksnettravels.builttoroam.com/trackback.axd?id=a16e658d-07df-409f-845a-53cfcf645ab0</trackback:ping>
      <wfw:comment>http://nicksnettravels.builttoroam.com/post/2012/10/31/Windows-Phone-8-SDK-Creating-a-New-Application.aspx#comment</wfw:comment>
      <wfw:commentRss>http://nicksnettravels.builttoroam.com/syndication.axd?post=a16e658d-07df-409f-845a-53cfcf645ab0</wfw:commentRss>
    <feedburner:origLink>http://nicksnettravels.builttoroam.com/post.aspx?id=a16e658d-07df-409f-845a-53cfcf645ab0</feedburner:origLink></item>
  </channel>
</rss>
