wp8.1 sdk preview 预览版
http://pan.baidu.com/s/1hqyusja?qq-pf-to=pcqq.c2c#dir/path=%2FWPSDK%208.1%20DevPreview%20Installer
wp8.1 sdk preview
赶紧的吧!
Breaking changes for Windows Phone (code-named “Blue”)
[This documentation is preliminary and is subject to change.]
This document lists breaking changes introduced for Windows Phone (code-named “Blue”). We've made significant changes and optimizations to improve apps in Windows Phone (code-named “Blue”). Many optimizations don’t require you to change your code, but some improvements do require changes.
Functional changes
Pivot
The Pivot control has been rewritten, and these changes affect event timing and performance. All Pivot control template parts have been renamed or replaced. Windows XAML app code that depends on the timing of Pivot may no longer work correctly. Apps that have dependencies on the Pivot control template must be updated. Change any app code that depends on Pivot timing, and update any code that has dependencies on the Pivot control template.
Background tasks
Apps must programmatically request access to run in the background. If your app registers for one or more of the following triggers, it must call RequestAccessAsync:
SystemTriggerType.NetworkStateChange
SystemTriggerType.InternetAvailable
SystemTriggerType.ServicingComplete
SystemTriggerType.TimeZoneChange
SystemTriggerType.UserPresent
SystemTriggerType.SessionConnected
SystemTriggerType.NetworkOperatorHotspotAuthenticationTrigger
SystemTriggerType.NetworkOperatorNotificationTrigger
DeviceTriggerType.DeviceServicing
DeviceTriggerType.DeviceUse
SystemTriggerType.CachedFileUpdated
SmartCardTrigger
These triggers will not fire if your app has not previously called RequestAccessAsync. This change allows users (through Battery Sense) to explicitly control which apps can run in the background.
The following example illustrates how to call RequestAccessAsync:
BackgroundAccessStatus status = await BackgroundExecutionManager.RequestAccessAsync();
You can call RequestAccessAsync on startup from the UI thread of your app. For more information, see BackgroundExecutionManager in the API documentation.
Background audio
Background audio in Windows Runtime XAML now uses the IBackgroundTask interface as an entry point. You can define your own implementation of the IBackgroundTask interface or use the default provided PhoneInternal.Media.BackgroundPlayback.DefaultBackgroundTask. The ActivateBackgroundObject API is deprecated, so apps that use this API must implement an entry point and IBackgroundTask to avoid throwing exceptions:
- Add the entry point in the AppX manifest.
- Implement the IBackgroundTask interface or use the default PhoneInternal.Media.Background.Playback.DefaultBackgroundTask.
ContentDialog
Windows Runtime XAML ContentDialog PrimaryButtonClick and SecondaryButtonClick events now have associated event handlers. If you are using these events, your app will no longer build. You can update your code to handle the new associated event handlers.
Button stretch alignment
Buttons no longer stretch in size to more than their content requires (Windows Phone 8 XAML buttons stretch to the full available vertical and horizontal space). Apps that depend on buttons to expand beyond their content now display smaller buttons. This might adversely affect the appearance of your app. You can configure buttons to exhibit the previous stretch alignment behavior by setting the HorizontalAlignment and VerticalAlignment properties to stretch.
Styles
Headers in common controls have been standardized with a single header style that all controls use: HeaderContentPresenterStyle. As a result, the following redundant styles have been removed:
- ComboBoxHeaderThemeFontWeight
- DatePickerHeaderThemeFontWeight
- SliderHeaderThemeFontWeight
- TimePickerHeaderThemeFontWeight
- ComboBoxHeaderForegroundThemeBrush
- DatePickerHeaderForegroundThemeBrush
- SliderHeaderForegroundThemeBrush
- TimePickerHeaderForegroundThemeBrush
- ComboBoxHeaderThemeMargin
- SliderHeaderThemeMargin
Because ToolTip is an unsupported control in Windows Phone (code-named “Blue”), the following styles have been removed:
- ToolTipBackgroundThemeBrush
- ToolTipBorderThemeBrush
- ToolTipForegroundThemeBrush
- ToolTipBorderThemeThickness
- ToolTipContentThemeFontSize
Screen resolution calculation
Logical screen resolution is now calculated using device dpi to determine scale factor instead of physical display resolution. The minimum logical resolution is now 384 x 640 instead of 480 x 800. Windows XAML apps must now take into account different logical display resolutions. You must change any app code that assumes 480 x 800 resolution or uses absolute positioning or absolute dimensions.
Search button
When a foreground app is in full-screen mode, the user must double-tap the Search button to display the search box. This change prevents accidental search activation. Apps can programmatically opt in or opt out of full-screen mode. Full-screen mode is automatically enabled for the following experiences:
- Photo viewer
- Video viewer
- Taking a photo
- Capturing a video
- Any app in with the Games category
The delay window for two taps is set by default to 2500 milliseconds (ms); therefore, an intentional tap on the Search button must be followed by a second tap within 2500 ms to activate Search while in full screen mode. The delay window can be changed by altering the following registry setting (the value of CustomHoldDelays is in ms):
HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\CustomHoldDelays
This setting is not visible to the app user.
As a side effect of this change, users must swipe down twice to open a minimized Notification Center bar when an app is in full-screen mode.
Sharing
ShareStatusTask and ShareLinkTask now route to the Share contract. Native social networks are no longer shown in the share picker. Broadcast sharing to native social networks is no longer supported. However, apps can continue to use ShareStatusTask and ShareLinkTask. When these tasks are invoked by an app, users will see the share picker so they can choose an app to share to. Status and link information supplied by the app is carried to the share target.
Users can no longer broadcast share to multiple networks. Users of Twitter, Facebook, Sina Weibo, and LinkedIn must use apps for these social networks to compose, post, and update. Facebook Blue is built into Windows Phone (code-named “Blue”), but users of the following must download an app:
Users can use the following workaround until all social network apps support the Share contract:
- In the app, tap share.
- Share to OneNote or mail.
- Copy information into the target app.
Account Manager
Account Manager now uses a Managed Service Account (MSA) stack instead of the Identify Client Runtime Services Library (IDCRL) stack for the primary Microsoft account. The IDCRL stack has been deprecated. Because of this change, existing primary Microsoft accounts will be in the Attention Required state. Users must re-enter credentials using two-step verification (TSV).
Users can do the following to re-enter user credentials:
- On the Settings page, tap email+accounts.
- Tap Microsoft account.
- A green sign-in page appears. Enter the credentials for the Microsoft account that you use on your phone. Tap Next.
- On the TSV page, complete the TSV with another device or a phone call.
Users who encounter low-memory issues on their phone may have to try this process a second time or complete the verification with another device.
Not all clients have migrated to the new MSA stack. Opt-in TSV Microsoft accounts will not work until the IDCRL stack is removed. This only applies for users who have turned on TSV. This does not apply in a situation in which a user is accessing sensitive data and TSV is required regardless of opt-in. Users can do the following to turn off TSV for a Microsoft account:
- On your computer, go to https://account.live.com/proofs/Manage.
- Sign in to your account.
- Turn off two-step verification.
OAuth
Google account users must configure their accounts to use OAuth for authorization, even for accounts that use Credential Service Provider (CSP) authentication. To add a Google account with OAuth authorization, users can do the following:
- On the Settings page, tap email+accounts.
- Tap Google.
- Tap through subsequent screens to finalize authorization settings.
Users may need to pan and zoom to complete authorization. This process may not work for Google accounts where two-step verification is required. Users who encounter low-memory issues on their phone may have to try this process a second time or use a different network (such as Wi-Fi) to successfully set up a Google account.
Emulator installation
The Windows Phone (code-named “Blue”) SDK does not provide emulator support, but this functionality is available in the optional Windows Phone 8.0 SDK. When you installVisual Studio without installing the optional Windows Phone 8.0 SDK, phone emulators are no longer installed. This change does not apply to Visual Studio Express because it installs the Windows Phone 8.0 SDK by default. When you install Visual Studio (except for Visual Studio Express) without accepting the Windows Phone 8.0 SDK option, you will not see emulators listed on the Visual Studio Device menu. However, you will see a new Download Emulator 8.1 option on the Device menu. If you want to install emulators, you can do one of the following:
- During Visual Studio setup, under Optional Features to Install, select Windows Phone 8.0 SDK.
- Alternately, if Download Emulator 8.1 … appears in the Visual Studio Device menu, click this option and then click Install to finish emulator installation.
Microsoft Ads SDK
Pre-release versions of the Ads SDK will produce the following error message:
Error Found: The banned file analyzer test detected the following errors:
o The version of the file Microsoft.Advertising.Mobile.UI.Design.dll in your application has been flagged as insecure or otherwise not appropriate to ship.
o The version of the file Microsoft.Advertising.Mobile.Common.winmd in your application has been flagged as insecure or otherwise not appropriate to ship.
o The version of the file Microsoft.Advertising.Mobile.Display.winmd in your application has been flagged as insecure or otherwise not appropriate to ship.
o The version of the file Microsoft.Advertising.Mobile.UI.winmd in your application has been flagged as insecure or otherwise not appropriate to ship.
However, apps using pre-release versions of the Ads ADK can still be on-boarded to the device. To eliminate this error, update or remove any references to the files listed in the error message. For more information about fixing banned file errors, see Fixing Banned File Errors.
This error is expected because Windows Store Certification requirements do not allow submission of apps based on pre-release versions of the Ads SDK; this error does not occur when you use the final release version of the Ads SDK.
API changes
We encourage you to move away from deprecated APIs to get the best performance from your app. Also, some API elements have moved to new namespaces.
The following API elements are deprecated.
API element |
Replace with |
Pivot.LoadingPivotItem |
Pivot.PivotItemLoading |
Pivot.LoadedPivotItem |
Pivot.PivotItemLoaded |
Pivot.UnloadingPivotItem |
Pivot.PivotItemUnloading |
Pivot.UnloadedPivotItem |
Pivot.PivotItemUnloaded |
Display.DisplayProperties |
Display.DisplayInformation.GetForCurrentView |
MediaPlayer.UriSource |
MediaPlayer.SetUriSource |
ActivateBackgroundObject |
IBackgroundTask (see “Background Audio”) |
NavigateThemeTransition |
NavigationThemeTransition |
ExitTarget |
ExitElement |
EntranceTarget |
EntranceElement |
IsExitTargetProvider |
ExitElementContainer |
TurnstileNavigationTransitionInfo |
CommonNavigationTransitionInfo |
PhoneFontSize19 |
TextStyleLargeFontSize |
PhoneFontSizeMedium |
TextStyleLargeFontSize |
PhoneFontSizeLarge |
TextStyleExtraLargeFontSize |
PivotHeaderFontSize |
PivotHeaderItemFontSize |
PivotTitleFontSize |
TextStyleLargeFontSize |
SetBoundsForLayout |
SetDesiredBoundsMode |
BoundsForLayout |
DesiredBoundsMode |
ApplicationViewLayoutBoundsOption |
ApplicationViewBoundsMode |
VisibleBounds |
UseVisible |
CoreWindowsBounds |
UseCoreWindow |
Windows.UI.ViewManagement.Application.IsImmersive |
Windows.UI.ViewManagement.ApplicationView. SuppressSystemOverlaysWindows.UI.ViewManagement.ApplicationView.SuppressSystemOverlays |
The following API elements have new types.
API element |
Old type |
New type |
Pivot.Title |
string |
object |
The following API elements have moved from the Windows.UI.Xaml.Phone namespace.
API element |
New namespace |
DatePickerFlyout |
Windows.UI.Xaml.Controls |
DatePickerFlyoutItem |
Windows.UI.Xaml.Controls |
DatePickerFlyoutPresenter |
Windows.UI.Xaml.Controls |
DateSelectionCompletedEventArgs |
Windows.UI.Xaml.Controls |
DateSelectionCompletedEventHandler |
Windows.UI.Xaml.Controls |
ItemsSelectionCompletedEventArgs |
Windows.UI.Xaml.Controls |
ItemsSelectionCompletedEventHandle |
Windows.UI.Xaml.Controls |
ListPickerFlyout |
Windows.UI.Xaml.Controls |
ListPickerFlyoutPresenter |
Windows.UI.Xaml.Controls |
PickerFlyout |
Windows.UI.Xaml.Controls |
PickerFlyoutPresenter |
Windows.UI.Xaml.Controls |
Pivot |
Windows.UI.Xaml.Controls |
PivotItem |
Windows.UI.Xaml.Controls |
PivotItemEventArgs |
Windows.UI.Xaml.Controls |
PivotItemLoadedEventHandler |
Windows.UI.Xaml.Controls |
PivotItemLoadingEventHandler |
Windows.UI.Xaml.Controls |
PivotItemUnloadedEventHandler |
Windows.UI.Xaml.Controls |
PivotItemUnloadingEventHandler |
Windows.UI.Xaml.Controls |
PivotSlideInAnimationGroup |
Windows.UI.Xaml.Controls |
SelectionCompletedEventArgs |
Windows.UI.Xaml.Controls |
TimePickerFlyout |
Windows.UI.Xaml.Controls |
TimePickerFlyoutPresenter |
Windows.UI.Xaml.Controls |
TimeSelectionCompletedEventArgs |
Windows.UI.Xaml.Controls |
TimeSelectionCompletedEventHandler |
Windows.UI.Xaml.Controls |
JumpListItemBackgroundConverter |
Windows.UI.Xaml.Controls.Primitives |
JumpListItemForegroundConverter |
Windows.UI.Xaml.Controls.Primitives |
LoopingSelector |
Windows.UI.Xaml.Controls.Primitives |
LoopingSelectorItem |
Windows.UI.Xaml.Controls.Primitives |
LoopingSelectorPanel |
Windows.UI.Xaml.Controls.Primitives |
PickerFlyoutBase |
Windows.UI.Xaml.Controls.Primitives |
PivotHeaderItem |
Windows.UI.Xaml.Controls.Primitives |
PivotHeadersControl |
Windows.UI.Xaml.Controls.Primitives |
ContinuumNavigationTransitionInfo |
Windows.UI.Xaml.Media.Animation |
NavigateThemeTransition |
Windows.UI.Xaml.Media.Animation |
SlideNavigationTransitionInfo |
Windows.UI.Xaml.Media.Animation |
TurnstileNavigationTransitionInfo |
Windows.UI.Xaml.Media.Animation |
DatePickerFlyoutPresenterAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
LoopingSelectorAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
LoopingSelectorItemAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
LoopingSelectorItemDataAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
PivotAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
PivotItemAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
TimePickerFlyoutPresenterAutomationPeer |
Windows.UI.Xaml.Automation.Peers |
Manifest changes
MediaPlayer background tasks
Instantiating a MediaPlayer in a second process by specifying a controlChannel and ServerName in the manifest (to trigger a background process) is no longer supported. Apps that specify controlChannel and ServerName in the manifest will throw an exception instead of launching a background process. You can modify your manifest so that it specifies the background process using the same syntax as for a Windows 8.1 background task. In the Windows 8.1 model, the server name is set implicitly, and there is no controlChannel to specify.
Here is an example of a manifest entry that specifies a background task using the Windows 8.1 model:
<Extensions>
<Extension Category=”windows.backgroundTasks” EntryPoint=”Tasks.MyBackgroundTask”>
<BackgroundTasks>
<Task Type=”audio” />
</BackgroundTasks>
</Extension>
</Extensions>
For more information, see Creating a device background task in Windows 8.1 (Windows Store device apps).
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.
© 2014 Microsoft Corporation. All rights reserved.
Microsoft, Direct3D, Hyper-V, Silverlight, Visual Studio, and Windows are trademarks of the Microsoft group of companies.