Extending platform commonality through universal Windows apps

Today during our BUILD conference in San Francisco we unveiled the latest Windows software for phones, tablets, and PCs. Windows Phone 8.1 further establishes Windows Phone as the world’s most personal smartphone, with an even more engaging Start screen, the fastest keyboard on the market, thanks to Word Flow, and of course Cortana – the only personal digital assistant built around you. We also shared Windows 8.1 Update features such as UI improvements for mouse and keyboard users, the ability to pin Windows Store apps to the taskbar, and Internet Explorer compatibility enhancements. These OS features, and a new wave of devices that consumers will love, open up new opportunities for developers.

With this release of the Windows developer platform we set out to accomplish three major goals: 1) Reach customers across phones, tablets, and PCs; 2) Deliver innovation that supports developer investments; 3) Make cross-platform technology easier and more capable.

Reaching customers across phones, tablets, and PCs

Windows Phone 8 brought the same core set of operating system components used by Windows 8 to the modern UI of Windows Phone. Today we’re taking an even bigger step with Windows Phone 8.1 and Windows 8.1 Update by empowering developers to create universal Windows apps for a common Windows runtime.

Since universal Windows apps run on the same Windows runtime, developers have a common way of building and architecting apps for phones, tablets and PCs; from how they handle suspend and resume and do background processing, to the way they manage in-app security.

To help developers create universal Windows apps for Windows 8.1 and Windows Phone 8.1, we’ve announced the release of Visual Studio 2013 Update 2 RC. In addition to enhanced productivity and collaboration features, Visual Studio 2013 Update 2 RC includes Shared Projects that allow developers to create an app that is easily tailored to render a contextually appropriate experience across Windows phones, tablets and PCs. Get the tools now!

Innovation that supports developer investments

We’ve designed Windows for the long term, to address developers’ needs today, while respecting prior investments. We do this with one familiar toolset based on Visual Studio 2013, with support for C#, C++, JavaScript, XAML, DirectX, and HTML. The tools and technology stacks already used by hundreds of thousands of developers extend app development across Windows devices. Developers who have built apps for Windows 8.1 will find it fairly easy to reuse their work and bring tailored experiences to Windows Phone 8.1. Windows Phone 8 developers can use the same code, and also access new features, when they develop for Windows Phone 8.1.

Windows now also offers an expansive set of common APIs for everything from displaying notification toasts to accessing the file system and device capabilities. With Windows Phone 8.1, we are adding a wide array of new features including support for Bluetooth LE to connect to devices, Action Center extensibility to more effectively connect with users, triggers to ensure battery-friendly multitasking, VPN so end users can connect to their workplace, and many more.

Even Cortana delivers developer extensibility. Cortana brings a significant evolution of the speech technology developed by Windows and Bing, which first appeared in Windows Phone 8. In Windows Phone 8.1 we expose new enhancements to the Speech API that developers can use to integrate their apps with the Cortana family of services. Developers can now leverage speech recognition and voice commands to denote a series of actions triggered by heuristically derived scenarios that are surfaced through the Cortana speech recognition service. Fewer steps and more types of natural verbal exchanges open more apps. All of this is delivered through a simple API so developers who use Windows Phone 8 speech features today can plug into Cortana with little additional effort.

Developers are interacting with tablets and Windows computers in new ways as well. Kinect for Windows v2 will be released this summer. Soon developers can start building Kinect apps for Windows Store and publish or commercially deploy Kinect apps and solutions.

We’re also improving the way people find and use apps, as well as increasing monetization options and providing a more consistent Store experience across devices and markets. Developers can choose to link apps among phones, tablets and PCs so when a user downloads an app on one device they can install it on all of their Windows devices, increasing usage and engagement. Windows 8.1 Update brings the Store icon and pinned apps to the taskbar on the desktop. Developers are also getting more ways to market and monetize apps, such as common price tiers that bring the popular $0.99 and $1.29 price point to PCs, and updated advertising SDKs that support more rich media standards for better fill rates.

Also, by popular demand, we’ll soon be piloting a program through which developers can directly respond to app reviews to address potential confusion or other issues that may be hurting their ratings. These are just a few of the new Windows Store features being detailed this week during BUILD. Todd Brix will share much more detail about what’s new in Windows Store later today.

Make cross-platform technology easier and more capable

We’ve also been working for developers who may not already be on the Windows platform by supporting a mix of languages, runtimes, frameworks, and protocols that run across devices. Middleware partners like Unity have helped developers bring thousands of titles to the Windows Store. In a newly released beta version, Unity is delivering support for Windows Phone 8.1, including universal Windows apps.

Microsoft Open Technologies also works with various open source communities to contribute code to popular C++ frameworks and optimize them for Windows devices. For example, Windows Store supports Cocos2D-X, openFrameworks, OpenCV, Cinder, and Ogre3D apps. Box2D and Bullet also have joined the Windows Store. jQuery now fully supports Windows Runtime, so web developers can build Windows 8 apps reusing their existing code and skills. Developers who use HTML5 to build cross-platform apps for iOS and Android with tools like Apache Cordovawill find it easy to port their apps to Windows.

In fact, we’re taking a much more pragmatic approach to the web in general. We know that HTML is a critical cross-platform technology. Windows Phone 8.1 brings the same powerful hardware-accelerated IE11 HTML engine in Windows 8.1 to the phone. We’ve made great strides in extending IE to developers by focusing on open standards. Now we want to focus even more on interoperability. We already support WebGL and other technologies, such as media streaming extensions for adaptive streaming scenarios.

Today we’re also announcing that Microsoft Open Technologies has brought the Windows Library for JavaScript (WinJS) cross-platform apps and is open sourcing it under the Apache 2.0 license. Find the source code on GitHub. Use this powerful Windows development framework to build high-quality web apps across a variety of browsers and devices beyond Windows, including Chrome, Firefox, Android, and iOS.

Where we go from here

We’re enabling universal Windows apps for a common Windows runtime today, and we know we have more work to do, including expanding the range of devices running universal Windows apps so developers can reach more customers in more places, from Xbox One and the Internet of Things scenarios, to millions more desktop Windows users. We also continue to strive to make the app development, submission, and management process faster and easier. In the coming weeks and months, you’ll see additional updates to the Windows platform – including tools and Store – all designed to deliver even better experiences and enable greater opportunity for our developer community.