Jul 122012
 

This evening I was scanning dzone.com and came across this interesting rebuttal by Adam Benoit on the shortcomings of Windows Phone 7.

The 121 reasons listed as to why the Windows Phone 7 OS isn’t particularly good were rebutted fairly succinctly (although acknowledged; far too many shortcomings defer to the as-yet unknown Windows Phone 8).

A couple of the points weren’t directly addressed, and I’d like to take a look at one of them.  See the original rebuttal article for the full 121 reasons including counter-points.

OS Limitations

“8. Your contact details are automatically uploaded to cloud service whether you like it or not.”

I’m sure I read somewhere that you could also synch contacts via Exchange Server.  Whilst obviously not ideal for home users this could be one workaround.

You can synch outlook based contact information if you happen to use an Exchange Server.  If not the referenced Microsoft KB article has details, but unfortunately requires synching to the Cloud.  This brings me to my next point:

Privacy

Personally, I’m an opponent of this kind of lock-in.  I think it stinks that Microsoft (more or less) forces your address book onto their servers.  It’s potentially a privacy nightmare, and I won’t own a phone that requires me to synch the personal details of my friends and family to a corporation-controlled server.

This is a good example of why users need to be able to jail break their phones.  I’m sure we’ll figure out some way to get the details in, bypassing Windows Live.

Jul 082012
 

A double feature – two related posts in the same day!

The Essential Question

Following on from my earlier article on setting up a development environment for Windows Phone 7 development, the next obvious question to answer is: “what to build?”.

Never has there been a more appropriate time to ask this pivotal question, given the recent announcement of the Windows Phone 8, scheduled to be released around the time that Windows 8 (the Operating System) is due to launch.

Some Background

There’s a well documented gripe amongst the community at the perception that Microsoft has abandoned Silverlight; this seems to somewhat hold true. 

Conventional directions appear to send people away from Silverlight if they wish to adopt the Metro style interface. [ http://msdn.microsoft.com/en-us/library/windows/apps/hh465136.aspx ]

Yet, from the forums [ http://forums.create.msdn.com/forums/t/106054.aspx ] comes this quote from Mark Chamberlain [Microsoft]

All Windows Phone 7.x applications will run on Windows Phone 8, and the new Windows Phone 8 developer tools will support building applications for Windows Phone 7.x. This includes both Silverlight and XNA applications. Thus, application developers who wish to target both 7.x and 8.0 phones can build for 7.x.

I’ve attempted to find some concrete answers on what way to best design and build a Windows Phone application which will embrace the new phone and benefits which come with it.  Wisdom states that Silverlight is probably not the horse to back at this stage. 

What To Target?

Here’s some details about what to expect in Windows Phone 8:

Windows Phone 8 programming technologies include:

  • Windows 8 Metro UX (WinRT API) technology (if you are familiar with WP7 Silverlight app development, it is an easy transition to learn this).
  • DirectX/C++ native code development, for apps or games. You can port across pre-existing DirectX applications.
  • Standards-based HTML5 programming which can be surfaced in the app via the Web Browser control or as a web page using IE10

The key statement on the forum is this one:

An app built for 8.0 will not run in Windows Phone 7.x, but an app built for 7.x will run in Windows Phone 7 or 8.

Which means that you will be forced to decide whether you want to take advantage of the new functionality in Windows Phone 8 (thus abandoning Windows Phone 7) or to develop two different code bases (targeting WP7 and WP8 respectively).

Developers building applications using XAML/.NET will be able to reuse substantial amounts of their business logic code across Windows and Windows Phone

If you were to build for both WP7 and WP8, then it might be time to look at the Visual Studio 2012 Release Candidate.

Should you decide to target Windows Phone 8, it might be a good idea to wait for the Windows Phone 8 SDK which is rumoured to be released in late July 2012 (i.e. not too far away).  It seems inevitable than if you wish to build a Windows Phone application, you’ll want to upgrade to the latest development tools.

Visual Studio 2012 Release Candidate

image

Based on the above, I’m going to start looking at options to target Windows Phone 8 (in isolation) as well as options for a Windows Phone 7 and 8 dual target build.  The latter is probably going to be the most feasible in the short term, while we wait to hear about the next Windows Phone SDK.

A Look at the Release Candidate

Without the Windows Phone 8 SDK, it’s a little hard to know what to do right now, but the logical place to start is to have a look at the Visual Studio 2012 Release Candidate.  It’s a sure bet you’ll need it to any traction with the Windows Phone 8 SDK when it is launched.

I’ve previously done a quick review of the Release Candidate here.  Despite my better judgement, I’ve decided to install the RC on my primary laptop.  I’ve been previously burned by issues in upgrading to RTM editions from pre-release, so this is a calculated gamble.

July RC Update

While we’re at it – don’t forget the July patch which has been recently released.  [ http://www.microsoft.com/en-au/download/details.aspx?id=30178 ]

Product Comparison

Windows Phone development appears to be supported in all versions of Visual Studio 2012:
[ http://www.microsoft.com/visualstudio/11/en-us/products/compare ]

However, as of this writing, there’s no native support for Windows Phone applications in the current crop of Visual Studio 2012 RC editions. It’s likely we’ll have to wait a month for the SDK to come out. Check back in late July for more details.

Obligatory Rant

Here’s the kicker – yet again, Windows Phone development is the poor cousin in the developer tool community.  It is, again, a separate installation (via the SDK). 

It’s actually very poor form from Microsoft to continually ostracise the Phone developer community by not including Windows Phone as a component of the Visual Studio 2012 product proper. 

As if Windows Phone developers haven’t felt enough pain in recent years, with the continual dropping of support for legacy projects (yes, I’m talking about Windows Mobile editions that were dropped from Visual Studio 2010).

Conclusion

So the short answer is.. stay tuned.

References

Migrate/port a Windows Phone 7 app to a Metro style app
[ http://msdn.microsoft.com/en-us/library/windows/apps/hh465136.aspx ]

Recapping Windows Phone 8 developer news
[ http://windowsteamblog.com/windows_phone/b/wpdev/archive/2012/06/29/recapping-windows-phone-8-developer-news.aspx ]

Status update: Windows Phone 8 Developer Tools (2012.06.21)
[ http://forums.create.msdn.com/forums/t/106054.aspx ]

Visual Studio 2012 Release Candidate
[ http://www.microsoft.com/visualstudio/11/en-us ]

Visual Studio 2012 Release Candidate July 2012 Patch
[ http://www.microsoft.com/en-au/download/details.aspx?id=30178 ]

Visual Studio 2012 Product Comparisons
[ http://www.microsoft.com/en-au/download/details.aspx?id=30178 ]

Jul 082012
 

Introduction

This is the first of a number of articles focused on development for the Windows Phone 7 platform.  I’m in no way new to Windows Mobile development, having suffered through many of the previous Windows Mobile releases.

This time, (sincerity implied) it’s different.  The Windows Phone 7 platform looks to be a universe ahead of Windows Mobile 6.5.  Playing a hasty catch up game, Microsoft has finally released the mobile phone platform we’ve so desired.

Now, getting into the Windows Phone 7 development space was not as simple as installing Visual Studio 2010.  As is common with Microsoft, it involved the download and installation of a plethora of resources.

Initial Preparation

Before we get into the intricacies of building a Windows Phone 7 application, we’ll need to prep the development environment first.  Your baseline development environment should look like this:

  • Windows 7 Professional or Ultimate Edition (32 or 64 bit)
  • or Windows Server 2008 R2 x64 Standard Edition
    • Install IIS with most options enabled (optional)
  • 4 GB RAM (minimum!)
  • 2.x GHz Processor (dual, quad core or better preferred)
  • 512 MB (or better) video card (preferred but not essential)
  • Visual Studio 2010 Premium or Ultimate (full or custom setup) – include SQL Express
  • Visual Studio 2010 Service Pack 1
  • Fully patched (apply all Windows Update patches)

Now after all this has been properly installed (which can take a good evening), you’ll need to go and download the following packages which will be installed on top of the previous.  You could download these whilst building your development environment to speed things up.

Quick Links

Description Link
Windows Phone Developer Tools RTW http://www.microsoft.com/en-us/download/details.aspx?id=13890
Windows Phone Developer Tools RTW ISO Image http://go.microsoft.com/fwlink/?LinkId=201927
Windows Phone Developer Tools January 2011 Update http://www.microsoft.com/en-us/download/details.aspx?id=23854
Windows Phone SDK 7.1 (Web Downloader) http://www.microsoft.com/en-us/download/details.aspx?id=27570
Windows Phone SDK 7.1 (Full ISO Image) http://download.microsoft.com/download/6/E/7/6E795194-EE2D-4636-AEBD-D1C42D2E06E1/WPSDKv71_en1.iso
Windows Phone SDK 7.1.1 Update http://www.microsoft.com/en-us/download/details.aspx?id=29233
Windows Phone 7.5 Training Kit http://www.microsoft.com/en-us/download/details.aspx?id=28564
Windows Phone 7 Training Kit for Developers – RTM Refresh http://www.microsoft.com/en-us/download/details.aspx?id=1678

Developer Tools

10/15/2010 - Windows Phone Developer Tools RTW
http://www.microsoft.com/en-us/download/details.aspx?id=13890

image

If you prefer the full ISO (disk image) rather than using thee “web installer”, use this link:
http://go.microsoft.com/fwlink/?LinkId=201927

The Windows Phone Developer Tools includes the following

  • Visual Studio 2010 Express for Windows Phone
  • Windows Phone Emulator Resources
  • Silverlight 4 Tools For Visual Studio
  • XNA Game Studio 4.0
  • Microsoft Expression Blend for Windows Phone

3/3/2011 - Windows Phone Developer Tools January 2011 Update
http://www.microsoft.com/en-us/download/details.aspx?id=23854

The Windows Phone Developer Tools January 2011 Update includes:

  • Windows Phone Emulator Update – Exposes copy/paste functionality in the Windows Phone 7 emulator. For more information, see How to: Test Copy and Paste in Windows Phone Emulator. End users can use the copy and paste functionality only after receiving the corresponding update to the Windows Phone 7 operating system.
  • Windows Phone Developer Resources Update – Fixes a text selection bug in pivot and panorama controls. In applications that have pivot or panorama controls that contain text boxes, users can unintentionally change panes when trying to copy text. To prevent this problem, open your application, recompile it, and then resubmit it to the Windows Phone Marketplace.
  • Windows Phone Capability Detection Tool – Detects the phone capabilities used by your application. When you submit your application to Windows Phone Marketplace , Microsoft performs a code analysis to detect the phone capabilities required by your application and then replaces the list of capabilities in the application manifest with the result of this detection process. This tool performs the same detection process and allows you to test your application using the same list of phone capabilities generated during the certification process. For more information, see How to: Use the Capability Detection Tool.
  • Windows Phone Connect Tool – Allows you to connect your phone to a PC when Zune® software is not running and debug applications that use media APIs. For more information, see How to: Use the Connect Tool.
  • Updated Bing Maps Silverlight Control – Includes improvements to gesture performance when using Bing™ Maps Silverlight® Control.

9/25/2011 - Windows Phone SDK 7.1
http://www.microsoft.com/en-us/download/details.aspx?id=27570 (web downloader)
http://download.microsoft.com/download/6/E/7/6E795194-EE2D-4636-AEBD-D1C42D2E06E1/WPSDKv71_en1.iso (full ISO image)

The Windows Phone SDK includes the following:

  • Microsoft Visual Studio 2010 Express for Windows Phone
  • Windows Phone Emulator
  • Windows Phone SDK 7.1 Assemblies
  • Silverlight 4 SDK and DRT
  • Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0
  • Microsoft Expression Blend SDK for Windows Phone 7
  • Microsoft Expression Blend SDK for Windows Phone OS 7.1
  • WCF Data Services Client for Window Phone
  • Microsoft Advertising SDK for Windows Phone

3/26/2012 - Windows Phone SDK 7.1.1 Update
http://www.microsoft.com/en-us/download/details.aspx?id=29233

Windows Phone SDK 7.1.1 Update includes the following

  • New 256-MB version of Windows Phone Emulator
  • Updated 512-MB version Windows Phone Emulator

 

Training Kits

2/3/2011 - Windows Phone 7 Training Kit for Developers – RTM Refresh
http://www.microsoft.com/en-us/download/details.aspx?id=1678

Includes:

  • Complete Windows Phone Training kit for Developers includes both Silverlight and XNA Framework labs
  • Windows Phone Training Kit for Silverlight Developers includes only Silverlight labs
  • Windows Phone Training Kit for XNA Framework Developers include only XNA Framework labs

 

12/19/2011 – Windows Phone 7.5 Training Kit
http://www.microsoft.com/en-us/download/details.aspx?id=28564

Includes:

Two sets of hands on labs for Windows Phone 7.5 application development. These are packages that support a full offline installation of the labs that are available live online.

 

Tools Reference

Windows Phone Developer Tools and Device Unlock
http://create.msdn.com/en-US/education/basics/tools_unlock

 

For Reference –

Application Certification Requirements for Windows Phone
http://msdn.microsoft.com/en-us/library/hh184843%28v=VS.92%29.aspx

App Hub Application Submission Walkthrough
http://create.msdn.com/en-US/home/about/app_submission_walkthrough_upload

Aug 262010
 

Just when you thought it was safe to talk about mobile phones again – the hyper-marketing(tm) machine (a.k.a the Microsoft Marketing department) is back and this time they’re trumpeting the Windows Phone 7 (is it just me, or is that a stupid name?).

Whilst Microsoft is no stranger to the Smartphone marketplace, their record is not inspiring.  I, like many other developers in the past, have been led down the garden path more often than not with Windows Mobile.

Can Windows Phone 7 (like it’s namesake, Windows 7 the operating system) deliver?

I’m extremely cynical this time around.  Despite there being (for years) a clear benchmark in the mobile phone marketplace (Apple’s iPhone), Microsoft has been the perennial loser in the mobile phone market.  There have been many reasons proffered, and most point to hardware as the main factor.  With Windows Phone 7, Microsoft apparently has outlined some very specific hardware requirements to Smartphone manufacturers:

“The phones must have at least a five megapixel autofocus camera with LED flash, a fast ARM v7 Cortex or Scorpion processor, a minimum 3.5 inch capacitive multi-touch screen with 800 by 480 megapixel resolution, A-GPS, a compass, an accelerometer and proximity and light sensors as well as WiFi and Bluetooth.”

The question  we are left with is – is hardware alone enough to turn the corner?  Windows Mobile as an operating platform has been very weak historically, the main bugbears being dropped calls and unresponsive handsets which would point to a software issue.

Don’t get me wrong, I want to like Windows Phone 7.  I want to believe that this time around Microsoft has finally built a platform for mobile phones which will work.  The attractiveness of building my own applications for the Windows Phone 7 without the ridiculous approval process required by the likes of Apple is a big factor.  The fact that the application marketplace for Windows Mobile applications is a barren wasteland when compared to Android or Apple’s App Store is another large benefit.

Over the past eight years I’ve used Windows Mobile 2003 Second Edition, Windows Mobile 5, Windows Mobile 6 and Windows Mobile 6.5 (current handset).

Will I buy a Windows Phone 7 handset? Past (bitter) experience has taught me not to trust – that, and Microsoft’s paltry 5% stake in the mobile phone market – therefore this time I will not be an early adopter, consider this a vote of no confidence from me.  In fact, my next handset is likely to be either an Android or an iPhone 3GS predominantly because I’ve run out of patience with Windows Mobile.

If I get a chance to see a handset (and I’m open to reviewing a handset should one come my way), I might do a review, but this time around it’s a case of (once) bitten, twice shy – where once equals four times.

Further Reading

http://www.windowsphone7.com/

http://www.engadget.com/2010/07/19/windows-phone-7-in-depth-preview/

http://www.theaustralian.com.au/australian-it/exec-tech/microsoft-eyes-phone-7-app-developers/story-e6frgazf-1225910019798