One of the best reviews of the Nokia Lumia 900 from Fox News 25.
http://www.myfoxboston.com/dpp/morning/tech-lab-the-ultimate-phone-20120405
Deuces! (Taken with InstaCam - 1980s Filter)
I have to get paid. AdMobs please!
Version 1.5 submitted! Let’s hope it passes.
Windows Phone Gray Accent Palette
I’d like to thank Paul Laberge, @plaberge, for helping me find the palette colors for the gray accent theme in Windows Phone for the lucky Nokia Lumia 800 users (UK users). I was able to create the palette colors at www.ColourLovers.com for other developers needs. Hope this can be helpful to you.
http://www.colourlovers.com/palette/1990189/WP7_Dark_Gray_Accent
http://www.colourlovers.com/palette/1990197/WP7_Lght_Gray_Accent
Mutex Snippet for Windows Phone 7
I created a little snippet for my app called “Surround with Mutex”. Basically it protects any call to the isolated storage with a Mutex.
A Mutex is: “A synchronization primitive that can also be used for interprocess synchronization.”
http://msdn.microsoft.com/en-us/library/system.threading.mutex.aspx
I had to use this due to my foreground and background agent possibly making calls at the same time to my files within isolated storage. If you do not protect your calls with a Mutex it is possible you could corrupt the data files within isolated storage. I had help with the Mutex with this bit of code example: http://www.albahari.com/threading/part2.aspx#_Mutex
I then took it for my needs and created a snippet for Visual Studio 2010. I named my snippet file Mutex.snippet.
It is essentially just an XML document with the code below. Instead of having file named Mutex.xml it needs to be renamed to Mutex.snippet.
<?xml version=”1.0” encoding=”utf-8” ?>
<CodeSnippet Format=”1.0.0” xmlns=”http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet”>
<Header>
<Title>Surround with Mutex</Title>
<Author>your name here</Author>
<Shortcut>smutex</Shortcut>
<Description>Surround with Mutex</Description>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
<SnippetType>SurroundsWith</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Code Language=”CSharp”>
<![CDATA[
// Naming a Mutex makes it available computer-wide. Use a name that’s
// unique to your company and application (e.g., include your URL).
using (var _mutex = new Mutex(false, “myappmutex-www.yourwebaddress.com”))
{
// Wait a few seconds if contended, in case another instance
// of the program is still in the process of shutting down.
if (!_mutex.WaitOne(TimeSpan.FromSeconds(3)))
{
return;
}
$selected$ $end$
}
]]>
</Code>
</Snippet>
</CodeSnippet>
Once this file is created in your project you need to add it to your snippet library. You can do this by going to Tools->Code Snippet Manager… then clicking Import…


Then select the snippet you created “Mutex.snippet”. Once you have done this, your snippet is immediately available for use. I just select the code I would like to surround with the Mutex and press control+K, control+S then I am able to use the snippet I created.

Nokia Lumia 800 as my new emulator for Windows Phone development.
Exiting a Windows Phone Application Programatically
This is just a helpful tip for those who do Windows Phone development. I had issues on trying to figure out what the best way was to exit my app from the app’s main root page. For a while I just threw an exception such as this:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
base.OnBackKeyPress(e);
throw new Exception(“Exit Main”);
}
It irked me to do this, but it worked and passed Marketplace certification. Well, I was needing to perform some code on the App.xaml.cs level when exiting my app:
private void Application_Closing(object sender, ClosingEventArgs e)
{
// Do stuff here
}
Well, this code was never called due to the exception being thrown from my main page when the back button was pressed. So, I dug in a bit to the NavigationService class and realized I could actually remove all back entries that were on the back stack. Joy! So, this is what I came up with for the OnBackKeyPress event:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
base.OnBackKeyPress(e);
if (NavigationService.CanGoBack)
{
while (NavigationService.RemoveBackEntry() != null)
{
NavigationService.RemoveBackEntry();
}
}}
And voila! It worked. The app exited properly and the Application_Closing event was called from App.xaml.cs which allowed me to do some background processing of my app’s data.
Hope this can help any of you.
Snippets: String to enumerated values
Useful code I use to convert string values to its enumerated counter parts.
public static T StringToEnum<T>(string name)
{
return (T)Enum.Parse(typeof(T), name, false);
}
public static T NumToEnum<T>(int number)
{
return (T)Enum.ToObject(typeof(T), number);
}





