User impact: When AppliedProperties is called, an ObjectDisposedException is thrown.

Workaround: Use a try/catch statement around the AppliedProperties call to catch the exception.

Emulator camera may save photos in an unexpected orientation.

User impact: Photos from the emulator camera may appear in the wrong orientation and/or flipped vertically.

Workaround: Debug using a Windows Phone 8 device.

If an app creates a Direct3D graphics device and requests a feature level higher than 9_3, the device will be successfully created only on the emulator and not on a device.

User impact: When the app is run on the phone, it won’t be able to create a Direct3D graphics device with a feature level higher than 9_3, so some code that requires higher feature level functionality could work on the emulator but not work on a physical device.

Workaround: Test your Direct3D-specific code using a Windows Phone 8 device. Optionally, when you create a new project, modify Direct3DBase.cpp to remove all feature levels except 9_3 from the array of D3D_FEATURE_LEVEL values supplied in the pFeatureLevel parameter to the D3D11CreateDevice function.

You can’t deploy an app to the emulator if the app lists ID_REQ_GYROSCOPE or ID_REQ_MAGNETOMETER hardware requirements in the WMAppManifest.xml file.

User impact: You’ll receive the following error message if you try to deploy to the emulator an app that has gyroscope, compass, or Near Field Communication (NFC) capabilities set in the WMAppManifest.xml file: Installation of the application failed. Run time error has occurred. Fix the Capabilities in WMAppManifest.xml file.

Workaround: If the app needs these requirements, test the app on a Windows Phone 8 device instead of on the emulator.

Visual Studio

The IntelliSense file for the Map control (Microsoft.Phone.Maps.* namespaces) is not included in the SDK.

User impact: No IntelliSense appears in the IDE when you are using APIs in the Microsoft.Phone.Maps.* namespaces.

Workaround: Download the IntelliSense .zip file for the Map control from the following location:

An incorrect error message is displayed when you attempt to add an unsupported reference to a portable library project from a Windows Phone project.

User impact: You may see an incorrect error message, such as the following:

Failed to add reference. A reference to 'PortableViewModel40' could not be added. User canceled out of save dialog (Exception from HRESULT: 0x8004000C (OLE_E_PROMPTSAVECANCELLED))

Workaround: Go to the Library tab in the Portable Class Library project properties and modify the project’s target frameworks to support the version of Windows Phone you want to reference.

When working with code in Visual Studio 2012, using the Up Arrow and Down Arrow keys to select items in the IntelliSense list doesn’t work as intended.

User impact: When using IntelliSense in Visual Studio 2012, you may have difficulty selecting IntelliSense items from the IntelliSense list using the Up Arrow and Down Arrow keys.

Workaround: Press the ESC key to close the current IntelliSense list and free the cursor.

The object browser doesn’t show the contents of Windows.winmd or Platform.winmd specific to phone projects.

User impact: Visual Studio may freeze and the object browser won’t show the contents of Windows.winmd or Platform.winmd. In some scenarios, the object browser may show correct information, however, using the object browser to navigate to either of the .winmd files won’t work.

Workaround: No current workaround is available, however, a resolution is planned in a Visual Studio update.

The System.Threading.ReaderWriterLockSlim.TryEnterWriteLock method throws a MethodAccessException when resource contention occurs on a background thread.

User impact: The ReaderWriterLockSlim.TryEnterWriteLock method will receive MethodAccessExceptions during normal use. The following exception with be displayed:

Workaround: Avoid using a ReaderWriterLockSlim object. Use other synchronization primitives such the Monitor class. As an additional alternative, use a System.Threading.SemaphoreSlim object at the class level.

Building a project in Visual Studio will fail when XAML refers to objects containing:

A WINPRT enum or a WINPRT enum wrapped in another value type.

A virtual method signature with a WINPRT enum or a WINPRT enum wrapped in another value type.

User impact: Visual Studio can’t build the project.

Workaround: Wrap the WINPRT types in managed classes.

When a Windows Phone 7.1 WINPRT project's configuration is changed to ARM\x86, the project is no longer checked for build tasks.

Workaround: To build the project in Visual Studio, mark the project for build in Visual Studio.

Visual Studio Designer

In the Visual Studio Designer view in a Windows Phone 8 app, an exception occurs when the app references a Portable Class Library that targets any combination of the following platforms: .NET Framework 4.5, .NET Framework for Windows Store apps, and Windows Phone 8. When this happens, the following error appears: Error HRESULT E_FAIL has been returned from a call to a COM component.

User impact: You can’t use the Visual Studio Designer if your app references a Portable Class library that targets any combination of those three platforms.

Workaround: Use the designer in Expression Blend instead of the Visual Studio designer. Alternatively, change the targets of the portable library to include any of the following: .NET Framework 4.0.3 or earlier versions, Windows Phone 7.5 or earlier versions, Silverlight 5 or earlier versions, or Xbox 360. Alternatively, remove the reference to the Portable Class Library project and replace it with a reference to the DLL that is the result of building that project.

App manifest

Deploying an app that uses the ID_CAP_WALLET_SECUREELEMENT capability to a dev unlock device fails and displays the following error: Installation of the application failed. Run time error has occurred. Fix the Capabilities in WMAppManifest.xml file.

User impact: You can’t side load an app that uses the ID_CAP_WALLET_SECUREELEMENT capability.

Workaround: To deploy an app using this capability, you must request special permissions and have those permissions applied to your dev account. For more info, and to contact support for assistance, go to Developer support.

Speech

Word breaking on list grammars created for the JPN locale might be incorrect.

User impact: Some common words for the JPN locale won’t be recognized.

If a user changes their Windows Phone locale, apps that use speech grammar may encounter an error. This error occurs because the locale change forces a format change for the related region-specific format value. Values that are affected include weight, repeat-prob, float variant tags, volume, rate, pitch, range, time, and contour.

Camera

When a photo is captured when the phone is in an inverted-portrait or portrait orientation, the automatically chosen orientation may be upside-down.

User impact: Photos will appear upside-down in the camera roll.

Workaround: Limit your app to a landscape orientation or use Windows.Phone.Media.Capture.KnownCameraGeneralProperties.EncodeWithOrientation to directly specify the image orientation.

Note:

The accelerometer APIs are required to detect an inverted-portrait orientation.

Localization

Each localized version of the Windows Phone SDK 8.0 is designed to function with the corresponding localized operating system and localized version of Visual Studio 2012.

User impact: You may experience problems when using the Windows Phone SDK 8.0 that is localized for one language with Visual Studio 2012 that is localized for a different language. For instance, using the Italian version of the Windows Phone SDK 8.0 with the English version of Visual Studio 2012 is not a supported scenario. For more info, see Windows Phone SDK 8.0.

Workaround: Ensure that the Windows Phone SDK 8.0, Visual Studio 2012, and the operating system all support the same localized language.

Breaking changes

OData Client Tools for Windows Phone

The OData Client Tools for Windows Phone installer extends the Add Service Reference experience with client-side OData support for developing Windows Phone 7 and Windows Phone 8 apps using Windows Phone SDK 8.0. The tooling adds references that are capable of consuming OData services up to v3. The OData Client Tools for Windows Phone is not included in the SDK. To download and learn more about the OData Client Tools for Windows Phone, see OData Client Tools for Windows Phone.

Copyright and confidentiality statements

This document is provided “as-is”. Information in this document, including URL and other Internet Web site references may change without notice.

Some examples depicted herein are provided for illustration only and are fictitious. No real association or connection is intended or should be inferred.

This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes and for no other purpose without the express written permission of Microsoft Corporation.