670 likes | 878 Views
Windows 8.1 Äpipäev. Ondrej Stastny Microsoft Premier Field Engineer. Agenda. UX/UI App Packaging Controls Asynchronous Programming Devices DirectX Files Multimedia Networking Security Tools Windows Store. Windows 8 APIs. User interface. Accessibility. Data binding.
E N D
Windows 8.1 Äpipäev Ondrej Stastny Microsoft Premier Field Engineer
Agenda • UX/UI • App Packaging • Controls • Asynchronous Programming • Devices • DirectX • Files • Multimedia • Networking • Security • Tools • Windows Store
Windows 8 APIs User interface Accessibility Data binding Live tiles and toast Input Controls HTML5/CSS XAML Devices Graphics and media Communications and data Services Portable Geo-location Direct3D Direct2D Local storage SMS Skydrive Direct Write Playback Capture Streams Background transfer Bing Sensors Proximity PlayTo Canvas Syndication Networking Azure Mobile SVG Printing XML and JSON Contracts Xbox Live Fundamentals Application services Threading/timers Memory management Globalization Cryptography Authentication
Windows 8.1 updated APIs User interface Accessibility Data binding Live tiles and toast Input Controls HTML5/CSS XAML Devices Graphics and media Communications and data Services Direct3D Direct2D Local storage SMS Skydrive Direct Write Portable Geo-location Playback Capture Streams Background transfer Bing PlayTo Sensors Proximity Canvas Syndication Networking Azure Mobile SVG Printing XML and JSON Contracts Xbox Live Fundamentals Application services Threading/timers Memory management Globalization Cryptography Authentication
Windows 8.1 new APIs User interface Speech synthesis Accessibility Data binding Live tiles and toast Input Controls HTML5/CSS XAML Devices Graphics and media Communications and data Services Portable Geo-location Point of service Local storage SMS HTTP Direct3D Direct2D Skydrive Direct Write Playback Capture Bing Streams Background transfer Contacts Sensors Proximity USB PlayTo Canvas WebGL Azure Mobile SVG Appoint-ments Syndication Networking HID WiFi direct Bluetooth Printing Xbox Live Scanning 3D printing XML and JSON Contracts PDF Fundamentals Application services Threading/timers Memory management Globalization Cryptography Authentication Diagnostics
Tile updates New tile sizes: • Small (70×70) • No notification, Yes badges • Large (310×310) Old tile sizes: • Medium (150×150) • Wide (310×150) • Selectively choose tiles that show app title • Tile notification fallback to support Win 8 • Wide tiles (310×150 px) • Large tiles (310×310 px) • Square tiles (150×150 px) • Small tiles (70×70 px)
Resizable Windows • No more fixed-width view states • Enums deprecated • New Snapped view size defaults to 500px • Still can use 320px • More than one window for one app • App can launch another app
Search updates • Search box control • App-supplied search suggestions an results • App-specific search history • Full touch support
Share updates • DataPackageUri deprecated • (ContentSource)WebLink – ex/implicit sharing, http(s) • (ContentSource)ApplicationLink – ex/implicit sharing, custom schema • Not mutually exclusive • Programmatic contract dismissal
Integrate with People and Calendar • Query for user’s contacts • Work with appointments
Other • Speech synthesis • Alarm app on lock screen • Changed item scheduling priorities
Resource Package • For languages, resolutions, etc. • Strings, images… • NO code • App package contains default resources
App Bundle • Apppackages (.appx) • 1 or more • Resource package • 0 or more • App bundle manifest (.appxbundlemanifest) • App block map (AppxBlockMap.xml) • App signature (AppxSignature.p7x)
Bundle deployment • Bundle validation • Manifest, Block Map, Signature • Deployment checks • Architecture, OS version, Disk, Dependencies, Signature • Package Applicability • Language, Scale, DirectX version • Package Staging • Download • Package Registration • Extensions, Resources
New Controls (C#) • AppBarcontrols • CommandBar • DatePicker & TimePicker • Flyout • Hub • Hyperlink • MenuFlyout • SettingsFlyout • In-App Search Control
Updated controls (C#) • FlipViewupdates • HeadersforComboBox, DatePicker, TimePicker, Slider, Edit controls • Placeholder text • Othercontrolupdates
AppBar controls • AppBar Button • AppBar Toggle Button • AppBar separator • Compact mode • Predefined symbols (glyphs)
Command Bar • Simplifies creation of App Bars • Automatic layout (primary and secondary commands) • Auto resize • Does NOT support images, progress bars etc.
DatePicker & TimePicker • System calendars • Text formatting • 12/24 hour modes
Flyout • Information or User Input • Button has a Flyout property • FlyoutBase.AttachedFlyout for other elements
Hub • “Entry point to an app” • Header – name of the app • Sections • Also contains (interactive) header • MinWidth • DataTemplate
Menu Flyout • MenuFlyoutItem • ToggleMenuFlyoutItem • MenuFlyoutSeparator
Settings Flyout • Root element of the document • Header with back button, title andicon • Invoke from charm or code • Visual Studio support
In-App Search Control • Integrates with the Search contract • Supports app-supplied search • suggestions • results • Search history • full support for touch, keyboard, and mouse
Control Updates • Smooth animations for FlipView • Headers for ComboBox, DatePicker, TimePicker, Slider, and edit controls • Placeholder text for ComboBox, PasswordBox, RichEditBox, SearchBox, TextBox • WebView • XAML overlay • Render Transformations • Navigation API • And much more!
More Control Updates • ScrollView frozen properties • Binding fallback • Frame navigation • GetOpenPopups • MaxLines for TextBlock, RichTextBlock, and RichTextBlockOverflow • Prevent keyboard when changing focus programmatically • Custom Paste handling
NewControls (JavaScript) • BackButton • ItemContainer • NavBar • Repeater • WebView
Updated controls (JavaScript) • ListView
BackButton (JavaScript) • Automatically checks the navigation stack and disables
ItemContainer (JavaScript) • Swipe • Drag-and-drop • Hover
NavBar (JavaScript) • Consistentand predictablenavigationexperience • Top of the screen
Repeater (JavaScript) • Generate HTML from data • Not ListView replacement • More flexible • No advanced features
WebView(JavaScript) • Navigation API • HTML5 • No IndexDB, app cache, geolocation, etc.
ListView Improvements • Drag-and-drop • Reordering • CellSpanningLayout (multi-sized items)
Scheduling Jobs // Schedule somework. var job1 = S.schedule(function () { window.output("Running job1"); }, S.Priority.normal); window.output("Scheduled job1"); // Schedule more work. var job2 = S.schedule(function () { window.output("Running job2"); }, S.Priority.normal); window.output("Scheduled job2");
Managing jobs varownerObject = S.createOwnerToken(); // Schedule somework. var job1 = S.schedule(function () { window.output("Running job1 with owner1"); }, S.Priority.normal); job1.owner = ownerObject; varjob2 = S.schedule(function () { window.output("Runningjob2with owner1"); }, S.Priority.normal); job2.owner = ownerObject; Window.output(“Canceling jobs”) ownerObject.cancelAll();
New or updated • Human Interface (HID) support • Point of Service (PoS) support • Custom USB devices • Bluetooth new protocols • 3D printer • Scanning
New or updated • HLSL shaders • GPU overlayed 2D over 3D • Tiled resources • Low-latency API faster UI • Multithreaded surface access • DirectX composition of XAML elements • Batch updated surfaces
New features • New file picker display modes (split screen…) • StorageLibrary (Music, Videos) • CameraRoll and Playlist access • Add items to Search index • SkyDrive in File picker
New features (continued…) • Retrieving parent folders • Neighbor files • TryGetItemAssync • Comparing files with IsEqual • DirectDrawSurface file format