So these are a collection of key bits of info you need to know when making Windows Phone apps, and some loose ends I’ve picked up in my development so far:
What you need:
Targeting Windows Phone 8
- Windows 8.0 and higher
- Visual Studio 2012 or higher
- The Windows phone 8 SDK
- To run the emulator, a computer that supports hardware visualization / SLAT (for the emulators) which should include the following processors (might still be disabled in the BIOS):
- Any AMD FX, Phenom or A Series processor
- Any Intel Haswell, i5 or i7 processor and 3rd generation or newer i3 processors
- >10GB hard disk space and plenty of RAM – the emulators will need either 512 or 1GB of free ram just to start up.
Targeting Windows Phone 7
This includes for building projects that can run on both WP7 & WP8
- Windows 7 and higher
- Visual Studio 2012
- The Windows Phone 7 SDK
Important information regarding Visual Studio 2013
- With Visual Studio 2013 you cannot target Windows Phone 7 for ANY project type. If you create a project or portable class library in VS2012 that would run on Windows Phone 7 and open it in Visual Studio 2013, it will “upgrade” the project and remove support for Windows Phone 7.
Since you mentioned them, what are portable class libraries?
- They are a visual studio project type which allows you to target multiple Microsoft platforms. It is a subset of functionality which is the venn diagram intersection of what each platform allows – therefore, the more platforms, the more restrictive. Options are Windows Phone, Windows Store apps, .Net and Silverlight.
- Projects targeting only Windows Phone 7 and 8 don’t need a portable class library – when creating the project you state the platform you are targeting – Windows Phone 8 for 8 only, or Windows Phone 7.1 for both Windows Phone 7 and 8. Remember you have to create the project in Visual Studio 2012 to target Windows Phone 7.
- Ideally a Windows Phone, developer unlocked. If you don’t have one, you can loan one from DVLUP
- Microsoft Account
How to get started
Training courses to help get started:
- Building Apps for Windows Phone 8 Jump Start on Microsft Virtual Academy – Free course presented by Andy Wigley and Rob Tiffany that I found extremely useful in getting started.
Programs to should sign up for:
- Nokia DVLUP – not all your apps will make money (and some may not be meant to), but you can still get rewarded for your efforts by getting points for your apps and updates, and points mean prizes.
Libraries or frameworks that are useful to know about
- Windows Phone Toolkit – Lots of useful things here that build on the built in controls, including ExpanderView, CustomMessageBox, ToggleSwitch, Wrap Panel and more. Available through NuGet Package Manger, in the Visual Studio “Tools” menu.
- Telerik RadControls – A pay for tool kit, though you may be able to get it free through DVLUP or Nokia Developer which has some neat stuff in it, including a nice error reporting control.
- Multilingual App Toolkit – Makes translating you app easier
- NumberTextBox – Ok, i’m biased but this is my own implementation of a TextBox that only accepts numbers, which is great if your app has a lot of number entry.
- JSon.NET – A free framework for working with web services that return JSon, and it works really well and makes it easy to parse the JSon to get to the results you want.
Where else to get help
Forums & Communities
- Microsoft MVP
- Nokia developer ambassador
Other random stuff I have found useful