Feeds

Windows Phone 8: Exceptional tools, but where are the devs?

Microsoft's vast scary world of versions and APIs

Security and trust: The backbone of doing business over the internet

Confused? You will be: let's talk on-demand compilation in the cloud

Another new feature is cloud-based compilation. The story here is that .NET apps are delivered as MSIL (Microsoft Intermediate Language) and compiled to native code at runtime. This cannot be done earlier due to hardware-specific considerations, but the process of compilation at every startup is demanding for the phone. In Windows Phone 8, apps are pre-compiled in the cloud to a format called MDIL that program manager Brandon Bray described as “90 per cent compiled”, speeding up performance.

With much in common between Windows 8 and Windows Phone 8, how can developers share code? The primary technique is a feature of Visual Studio 2012 called Portable Class Libraries. This is non-visual code in which Visual Studio will enforce compatibility with the platforms you specify.

The idea is to share the non-visual code between the platforms you select, and write a platform-specific user interface. Of course “portable” in Microsoft’s world means portable between variants of Windows rather than true cross-platform.

Developing for Windows Phone 8 requires Visual Studio 2012, though there is a free Express version for getting started, and Windows 8. One reason why Windows 8 is required is that the phone emulator runs on the Hyper-V virtualisation engine, which is not present in Windows 7.

You can target Windows Phone 7.x as well as 8. The emulator is comprehensive and lets you vary screen size and memory, and emulate location data and accelerometer movement. A Simulation Dashboard lets you test with a variety of scenarios such as low-signal strength.

Windows Phone 8 emulator

The Hyper-V emulator for Windows Phone 8

Deployment is normally through Microsoft’s store, but there is also provision for enterprises to install apps directly, such as via email or a microSD card. This is enabled by registering for an enterprise mobile code signing certificate and getting an Application Enrolment Token that enrols phones for use with company apps.

There are also a range of new features available to apps. These include lock screen notifications, a rich new map control and navigation API, speech API, wallet API for mobile payments including Near-Field Communications (NFC) where available, camera add-ins called Lens apps, and new photo and video capture APIs. The web browser control is now based on Internet Explorer 10.

In networking, there are APIs for Bluetooth, proximity including NFC, IPv6 support, and native Winsock support for those familiar with Windows sockets programming. In-app purchases are supported. A new storage API is a subset of that in the Windows Runtime and includes SD card access.

Native code support in Windows Phone 8 has enabled better support from third-party libraries, and Tony Garcia from Unity took the stage at BUILD to show off use of this popular game development framework on Windows Phone 8.

This is a big release, with much that is significant. Visual Studio is well liked by developers, and if it were competing on ease of development alone, Microsoft would be prospering in mobile. As it is though, it struggles, because of two well-entrenched competitors in the form of Apple iOS and Google Android. Development company Thoughtworks said this in its Technology Radar, a survey of software development trends:

Despite a promising start to Windows Phone, a well thought-out user interface, and probably the best development experience of any mobile platform, we have seen several stumbles in the execution of the platform strategy by Microsoft and its partners. This makes us less optimistic about the future of the platform than we were in the last radar.

This was in relation to Windows Phone 7. If the platform was already good for developers, Windows Phone 8 is exceptional. Whether that is enough to win customers from other platforms remains an open question. ®

Security and trust: The backbone of doing business over the internet

More from The Register

next story
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
iOS 8 release: WebGL now runs everywhere. Hurrah for 3D graphics!
HTML 5's pretty neat ... when your browser supports it
Mathematica hits the Web
Wolfram embraces the cloud, promies private cloud cut of its number-cruncher
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Intel: Hey, enterprises, drop everything and DO HADOOP
Big Data analytics projected to run on more servers than any other app
Mozilla shutters Labs, tells nobody it's been dead for five months
Staffer's blog reveals all as projects languish on GitHub
SUSE Linux owner Attachmate gobbled by Micro Focus for $2.3bn
Merger will lead to mainframe and COBOL powerhouse
iOS 8 Healthkit gets a bug SO Apple KILLS it. That's real healthcare!
Not fit for purpose on day of launch, says Cupertino
prev story

Whitepapers

Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.
WIN a very cool portable ZX Spectrum
Win a one-off portable Spectrum built by legendary hardware hacker Ben Heck
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
Protecting users from Firesheep and other Sidejacking attacks with SSL
Discussing the vulnerabilities inherent in Wi-Fi networks, and how using TLS/SSL for your entire site will assure security.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.