Tools

With Windows 8.1 also come lots of updates to the tools and templates that you can use to create Windows Store apps. These updates can help cut down the work in your development and test cycles.

Get the updated tools described below at our Windows 8.1 page.

New or updated in Windows 8.1

General updates

AreaDescription of update

Support for updating your Windows Store apps to Windows 8.1.

Migrate your Windows 8 app to Windows 8.1. This may first require updating your app code for Windows 8.1.

Windows Store app templates

We've updated all templates for Windows 8.1, and we've added a new Hub template too.

Azure Mobile Services and push notification wizards

  • The Services Manager makes it easy to connect your app to Azure Mobile Services or Microsoft Advertising.

  • The push notification wizard makes it easy to set up a Azure Mobile Service to send push notifications to your app.

App bundle support

Now you can combine resource packages (like multiple scales, languages, or Microsoft Direct3D feature levels) into a single .appxbundle file for submission to the Windows Store. For your customers, this means that your app is only deployed with the resources they need for their device and locale.

App validation on a remote device

The Create App Package Wizard in Microsoft Visual Studio 2013 now makes it easy to validate your app using Windows App Certification Kit 3.0 on a remote device (such as Windows RT PCs).

Create coded UI tests using XAML

Write automated functional tests for testing Windows Store apps using XAML and the cross-hair tool.

Note  Touch interactions are now supported for controls.

New Visual Studio theme/ and Visual Design

We've added a third theme, Blue, to the existing Light and Dark themes. The Blue theme offers a mid-range color scheme reminiscent of Microsoft Visual Studio 2010.

Also, based on user feedback, we've enhanced all themes with additional color and clarity in icons, revised icons, more contrast across the development environment , and clearer segmentation of regions within the environment.

 

Diagnostics

AreaDescription of update

Mixed-language debugging

For Windows Store apps that use JavaScript and C++, the debugger now lets you set breakpoints in either language and provides a call stack with both JavaScript and C++ functions.

Managed app debugging

The debugger now displays return values. You can use Edit and Continue in 64-bit managed apps. Exceptions that come from Windows Store apps preserve information about the error, even across language boundaries.

Asynchronous debugging improvements

The call-stack window now includes the creation stack if you stop in an asynchronous method.

Native "Just My Code"

For native code, the call stack simplifies debugging by displaying only the code that you've created.

DOM Explorer

  • The Cascading Style Sheets (CSS) editor supports improved editing, Microsoft IntelliSense, inline style support, shorthand, specificity, and notification of invalid properties.
  • The Computed and Styles panes have been enhanced.
  • The DOM Explorer supports search, editing as HTML, IntelliSense, and undo stacks.

JavaScript Console

The console now supports object preview and visualization, new APIs, multiline function support, IntelliSense, evaluation of elements as objects or HTML, and legacy document modes.

JavaScript Memory Profiler

  • Dominators view shows memory allocation retained by each object.
  • The profiler notifies you of potential memory leaks caused by detached or disconnected DOM nodes.

JavaScript UI Responsiveness

  • The Details pane includes hyperlinks to event source locations, plus a chart showing the percentage of time that each child event contributed to the selected event’s overall duration.
  • You can now expand instances of Layout and Style calculation events to display the HTML elements that were affected by the operation.

XAML UI Responsiveness

For C#/VB/C++ XAML-based Windows Store apps, the XAML UI Responsiveness tool allows you to diagnose performance issues related to app startup and page navigation, panning and scrolling, and input responsiveness in general.

 

JavaScript editor

AreaDescription of update

Completion of enclosing character pairs

The editor automatically inserts the closing character when you type a left brace ("{"), parenthesis ("("), bracket ("["), single quotation mark ("`"), or ("""). A smart auto-format and indent of your source is also made as it auto-completes.

Editor navigation bar

This new UI feature helps you identify and move through the important elements in your source code. New for JavaScript developers, the navigation bar will highlight important functions and objects in your source.

Deprecation notes in IntelliSense.

If a Windows API element has been deprecated in Windows 8.1, IntelliSense tooltips identify it as "[deprecated]".

Go To Definition for namespaces

You can right-click a namespace you use in your code (such as WinJS.UI) and then click Go To Definition to be taken to the line where that namespace is defined.

Identifier highlighting

Select an identifier (for example, a variable, parameter, or function name) in your source and any uses of that identifier will be highlighted in your source code.

 

C++ development

AreaDescription of update

Windows Store app development for Windows 8.1

  • Boxed types in value structs

    You can now define value types by using fields that can be null—for example, IBox<int>^ as opposed to int. This means that the fields can either have a value, or be equal to nullptr.

  • Richer exception information

    C++/CX supports the new Windows error model that enables the capture and propagation of rich exception information across the Application Binary Interface (ABI); this includes call stacks and custom message strings.

  • Object::ToString is now virtual

    You can now override ToString() in user-defined Windows Runtime ref types.

C++11 standard compliance

Compiler support for ISO C++11 language features

  • Default template arguments for function templates

  • Delegating constructors

  • Explicit conversion operators

  • Initializer lists and uniform initialization

  • Raw string literals

  • Variadic templates

Updated Standard Template Library (STL) to use the latest C++11 features Improvements to C99 libraries

  • C99 functionality added to <math.h>

  • Complex math functions in new header, <complex.h>

  • Integer type support in new header, <inttypes.h>; includes format string support for "hh"

  • Support for variable-argument scanf forms in <stdio.h>. C99 variants of vscanf, strtoll, vwscanf/wcstoll, and isblank/iswblank are implemented.

  • New conversion support for long long and long double in <stdlib.h>

C++ REST SDK

Modern C++ implementation of Representational State Transfer (REST) services. For more info see C++ REST SDK (codename "Casablanca").

C++ Azure Mobile Services SDK

The shortest path to a connected C++ app with a Azure backend.

C++ AMP

SxS CPU/GPU debugging (for WARP accelerator), enhanced texture support (mipmaps and new sampling modes), and improved diagnostics and exceptions.

IDE productivity features

  • Improved code formatting.

  • Brace completion.

  • Auto-generation of event handler code in C++/CX and C++/CLI.

  • Context-based member list filtering.

  • Parameter help scrolling.

  • Toggle header/code file.

  • Resizable C++ project-properties window.

  • Faster builds. Numerous optimizations and multi-core utilization make builds faster, especially for large projects. Incremental builds for C++ apps that have references to C++ WinMD are also much faster.

App performance

  • Pass vector type arguments by using the __vectorcall calling convention to use vector registers.

  • Reduction or elimination of CPU/GPU data transfer in C++ AMP.

  • Auto-vectorization improvements.

  • C++/CX optimizations in allocations and casting.

  • Performance tuning of C++ AMP runtime libraries.

  • New: PGO for Windows Store app development.

Build-time performance enhancements

Compiler throughput improvements for highly parallel builds.

 

Note  For a comprehensive list of what’s new for C++ development, check out What's New for Visual C++ in Visual Studio 2013.

HTML design tools

AreaDescription of update

CSS animation

The timeline editor helps you create CSS animations.

JavaScript behaviors

Add JavaScript event listeners to any element without writing code. Choose from a list of supplied event handlers or create your own.

Custom font embedding

Create a branded experience by using custom fonts for HTML text.

Data binding

Set the data binding for any template.

Rules and guides

Create custom guides.

Border radius

Easy-to-use handles on each element help you create rounded corners and ellipses.

Searching and setting CSS properties

The search box lets you set CSS property values directly and quickly.

Finding elements with CSS syntax

The live DOM search now supports CSS syntax. For example, you can automatically select all elements with class "myclass" by searching for ".myclass".

 

XAML design tools

AreaDescription of update

XAML editor improvements

The XAML editor in Visual Studio 2013 includes IntelliSense for data bindings and resources, smart commenting, and Go To Definition.

Rulers and guides

Create custom guides.

Better style editing support

Edit styles and templates in the context of the document where they're used, even if they're actually defined in another, shared location.

Sample data support

The data panel enhances sample data support in XAML projects for the Windows Store. This includes the ability to create sample data from JSON content. For an example of how to set this up, see the updated Windows Store app project templates for XAML.

View state authoring

The device panel in Blend for Microsoft Visual Studio 2013 and Visual Studio 2013 supports updated view states properties and requirements to support variable minimum widths.

 

Windows App Certification Kit 3.0

Use the latest version of the Windows App Certification Kit to test the readiness of Windows Store apps for Windows 8 and Windows 8.1 before on-boarding, and for the Windows 7, Windows 8, and Windows 8.1 Windows Desktop App Certification.

We've also updated the Windows App Certification Kit to give you a smooth experience. For example, you can now run tests in parallel to save time, and you have more flexibility in selecting the tests you run.

New validation tests

As with previous releases of Windows, we've revised the kit content to include more validation, helping to make sure that Windows apps running on the latest update are well behaved. Here's a high-level breakdown of the new tests.

TestDescription

Direct3D additional check

Validates apps for compliance with Direct3D requirements, and ensures that apps using C++ and XAML are calling a new Trim method upon their suspend callback.

Supported directory structure

Ensures that apps don’t create a structure on disk that results in files longer than MAX_PATH (260 characters).

File extensions and protocols

Limits the number of file extensions and protocols that an app can register.

Platform appropriate files

Checks for packages that contain cross-architecture binaries.

Banned file check

Checks apps for use of outdated or prerelease components known to have security vulnerabilities.

JavaScript background tasks

Verifies that apps that use JavaScript have the proper close statement in the background task, so the app doesn’t consume battery power unnecessarily.

Framework dependency rules

Ensures that apps are taking the right framework dependencies for Windows 8 and Windows 8.1.

 

Test reports

We've made a number of changes to the test report generated by the Windows App Certification Kit. These reports include new information, are easier to read, and provide more links to resources that can help you resolve issues. Significant additions and updates include:

  • Expanded error-message details.
  • Actionable info for supported and deprecated APIs.
  • Details about the configuration of the current test device.
  • A language toggle (if the report is localized).

For more information on how to use this kit, see Using the Windows App Certification Kit.

 

 

Show:
© 2014 Microsoft