introduction to windows 8 development c#/xaml objectives introduction to windows 8 operation system...

52
Introduction to Windows 8 Development C#/XAML Objectives www.netcomlearning.com • Introduction to Windows 8 Operation System • Windows 8 Platform • Windows Store Apps Design Guidelines • Developing a Windows Store App Using C#/XAML • Windows 8 Contracts • Q&A

Upload: isabela-baldridge

Post on 29-Mar-2015

222 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Introduction to Windows 8 Development C#/XAML Objectives

www.netcomlearning.com

• Introduction to Windows 8 Operation System• Windows 8 Platform• Windows Store Apps Design Guidelines• Developing a Windows Store App Using C#/XAML• Windows 8 Contracts• Q&A

Page 2: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Introduction to XAML

Extensible Application Markup Language is a declarative XML-based language used for initializing structured values and objects.

The acronym originally stood for Extensible Avalon Markup Language - Avalon being the code-name for Windows Presentation Foundation (WPF)

Page 3: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Introduction to XAML

XAML is used in for Windows 8 Metro applications.

XAML is also used extensively in .NET Framework 3.0 & .NET Framework 4.0 technologies, particularly Windows Presentation Foundation (WPF), Silverlight, Windows Workflow Foundation (WF) and Windows Runtime XAML Framework.

www.netcomlearning.com

Page 4: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Introduction to XAML

XAML files can be created and edited with visual design tools like Microsoft Expression Blend, Microsoft Visual Studio, and the hostable Windows Workflow Foundation visual designer.

www.netcomlearning.com

Page 5: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Windows Runtime XAML Framework

XAML framework is a User Interface API that is part of the Windows Runtime that forms the backbone of the new Metro-style apps in Windows 8 operating system.

www.netcomlearning.com

Page 6: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Introduction to Windows 8 Platform

www.netcomlearning.com

Page 7: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 1: Introduction to Windows 8 Operating System

• Windows 8 Platform Investments

www.netcomlearning.com

Page 8: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Windows 8 Platform Investments

New Windows Runtime (WinRT) APIs

New App Execution Environment

New Windows 8 User Experience

Windows Store

www.netcomlearning.com

Page 9: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 2: Windows 8 Platform

Windows 8 Platform

Metro Style App APIs• WinRT Language Projections

www.netcomlearning.com

Page 10: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Windows 8 Platform

Metro style Apps

HTML

JavaScript

C

C++

C#

VB

Desktop Apps

Win32.NET

/ SL

Internet

Explorer

Communication

& Data

Application Model

Devices &

Printing

WinRT APIs

Graphics & Media

Syst

em

Serv

ices

JavaScript

(Chakra)

C

C++

C#

VB

XAML HTML / CSSVie

wM

od

el C

on

trolle

r

Windows Core OS ServicesCore

www.netcomlearning.com

Page 11: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Metro Style App APIs

Fundamentals

Application Services Threading/TimersMemory

ManagementAuthentication Cryptography Globalization

DevicesGeolocation Portable Sensors NFC

User Interface

SVG Tiles Input Accessibility Printing

HTML5/CSS XAML DirectX Controls Data Binding

Communications & Data

Memory

ManagementXML Networking SMS

Notifications Streams

Contracts Local & Cloud Storage Web

MediaPlayback Capture PlayTo Visual Effects

www.netcomlearning.com

Page 12: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

WinRT Language Projections

Windows

Runtime

Object

(or Component)

Written

in C++, C#, VBWindows

Metadata

C++ App

Pro

jectio

n

CLR

C#/VB AppP

roje

ctio

n

HTML AppCh

akra

Pro

jectio

n

www.netcomlearning.com

Page 13: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

• Metro Style App Principles

www.netcomlearning.com

Page 14: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Metro Style App Principles

Metro Style App Principles

Fast and Fluid

Snap and Scale Beautifully• Contracts, Tiles, Notifications and Other

Guidelines

www.netcomlearning.com

Page 15: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Metro Style App Principles

www.netcomlearning.com

Page 16: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Fast and Fluid

Press and hold to learn

Swipe to select

Slide to dragTap for primary action

Pinch to zoom Rotate to rotate

Swipe from edge for

app and system UI

Follow the Windows 8 touch language and use only the prescribed gesture set:

See BUILD talk APP-391T: Designing Metro Style apps that are touch-optimized

www.netcomlearning.com

Page 17: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Snap and Scale Beautifully

People multi-task. An application can be

displayed any one of these layouts:

Widescreen (1366x768+) Snap view (required)Minimum (1024x768)

Portrait

www.netcomlearning.com

Page 18: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Contracts, Tiles, Notifications and Other Guidelines

Charms provide a consistent invocation model that users can always confidently rely on Share, Search and Settings

Tiles are the “front door” to your app. Treat it as an extension of your app

Toast notifications deliver transient messages outside the context of the app Show toast when your app is in the background Use it for real-time, personal content such as IM, Call, or Mail Provides quick navigation to contextually relevant location in your

app

www.netcomlearning.com

Page 19: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Everyday Controls

Button

Checkbox

Combo Box

Date PickerRadio Button

Hyperlink

ListBox

Ratings

Progress Bar

Progress Ring

Time Picker

Toggle Switch

Slider

www.netcomlearning.com

Page 20: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

AppBar

Most apps will use a transient app bar Bottom app bar is for commanding

Global commands on right, contextual commands on left Can be programmatically invoked when an item is selected for

contextual commands (Ex: Demo Start) If there is a single, frequently used command, it can be placed

on canvas Menu Flyout can be used to show groups of related commands

(Ex: Demo PaintPlay)

Top app bar is for navigation in immersive views(Ex: Back button & title)

www.netcomlearning.com

Page 21: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Integrating with Windows 8 Experiences

www.netcomlearning.com

Page 22: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Module Overview

Windows 8 Contracts• Implementing the Search and Share Contracts

www.netcomlearning.com

Page 23: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 3: Windows 8 Contracts

The Charms Bar• Windows 8 Contracts

www.netcomlearning.com

Page 24: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

The Charms Bar

www.netcomlearning.com

Page 25: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Windows 8 Contracts

• 1+1=3. Leverage other apps to complete scenarios

• Charms provide a consistent invocation model that users can always confidently rely on

• Start with the VS Item Template (available for Search, Share, File Picker extension)

www.netcomlearning.com

Page 26: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 4: Implementing the Search and Share Contracts

Search Anatomy

Search Settings & Events

Sharing From Source to Target• Adding Settings Flyout to Settings Charm

www.netcomlearning.com

Page 27: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Search Anatomy

1. Search box is scoped to the main app on screen

2. Query suggestions provided by the main app on screen• Autocompletes to terms for

which the app has search results3. List of installed Metro style apps that

have implemented the search contract4. Result suggestions provided

by the main app on screen• Must include a thumbnail and title• Indicates a strong or exact match result• Takes users directly to the details of the

result

1

2

3

www.netcomlearning.com

Page 28: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Search Settings & Events

Search Registration

Search Pane Events

Search Activation

Query Submitted

Suggestions Requested

Manifest Declaration

File Access Capability

Search Pane Settings

Search History (on by default)

Local Content Suggestions

Set placeholder text

www.netcomlearning.com

Page 29: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Sharing From Source to Target

Share Target AppShare Broker

User selects “Share”, active app

is sent event

Activated for sharing

Registers with the DataTransfer

Manager

Source App

Filters list of Target

Apps and Quicklinks

User selects Target

App or Quicklink

Processes DataPackage contents

Reports Complete

Completes Async

calls and returns

Receives event and

fills DataPackage

DataPackage lives in source application

Activate Target as kind

shareTarget

www.netcomlearning.com

Page 30: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Implementing Tiles and Notifications

www.netcomlearning.com

Page 31: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Module Overview

Using App Tiles in Windows 8 Metro Style apps• Using Notifications in Metro Style apps

www.netcomlearning.com

Page 32: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 5: Using App Tiles in Windows 8 Metro Style apps

App Tiles

Basic App Tiles

Live App Tiles• Secondary App Tiles

www.netcomlearning.com

Page 33: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

App Tiles

Rich and engaging view into your app

Represent your app to the user

Alive with activity and continually updated

Draw users back into your app over and over

www.netcomlearning.com

Page 34: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Basic App Tiles

Square (1x1) Wide (2x1)

Both sizes can have live updates

Tap on tile to launch or switch to an app

Static default tile specified in app manifest

Two sizes:

www.netcomlearning.com

Page 35: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Live App Tiles

Templates provide rich rendering options

Tiles updated using pre-defined templates

Text-only, image-only or combination

JPEG or PNG only, max size 150 KB

Optional “peek” animation

Local or cloud updates

www.netcomlearning.com

Page 36: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Secondary App Tiles

Tiles created by “pinning” content from app

Pin initiated by app via simple runtime call

User confirms pin operation via system UI

Exposes a personalized surface for app

Same capabilities as app tiles

Launch leads to relevant content

www.netcomlearning.com

Page 37: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 6: Using Notifications in Metro Style apps

Toast Notifications• Toast Templates

www.netcomlearning.com

Page 38: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Toast NotificationsToast notifications deliver transient messages outside the context of the app

Use toast notifications to get user’s attention immediately

User is in control and can permanently turn off toast notifications from your app

Allows quick navigation to a contextually relevant location in your app

Toast notifications are easy to invoke from your app or from the cloud

www.netcomlearning.com

Page 39: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Toast TemplatesToast notifications use the same template architecture as Live Tiles

Rich set of rendering options available

www.netcomlearning.com

Page 40: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Deploying to the Windows Store

www.netcomlearning.com

Page 41: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Module Overview

The Windows Store• Monetizing Using the Windows Store

www.netcomlearning.com

Page 42: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 7: The Windows Store

• The Store

www.netcomlearning.com

Page 43: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

The Store

Metro style app, displayed on Start

Spotlight, Recommend, Browse/Filter, Search

IE10 & Deep links

Designed for Discovery

Global reach: 200+ markets, 100+ languages

Enterprise distribution

Unprecedented reach

Free, paid, in-app, trials

3rd party in-app and advertising support

Flexible business models

Key documents published

WACK, track progress, actionable feedback

Transparent terms

Developers control pricing

Up to 80% revenue share

Best economics

www.netcomlearning.com

Page 44: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Lesson 8: Monetizing Using the Windows Store

Trial apps in Windows 8

In-App Purchase• Adding advertising to Windows 8 Apps

www.netcomlearning.com

Page 45: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Trial apps in Windows 8

Time based trials

Feature differentiated

www.netcomlearning.com

Page 46: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

In-App Purchasevar licenceInformation = Windows.ApplicationModel.Store.CurrentApp.LicenseInformation;   // can’t do in-app purchase in trial mode, must convert first if (!licenceInformation.IsTrial)             {//load the listings with all the products var listing =  await Windows.ApplicationModel.Store.CurrentApp.LoadListingInformationAsync(); if (!licenceInformation.ProductLicenses["product1"].IsActive)                  {    try      {       // The customer doesn't own this feature, so show the purchase dialog.  await Windows.ApplicationModel.Store.CurrentApp.

RequestProductPurchaseAsync("product1");       // the in-app purchase was successful      }      catch (Exception) {// The in-app purchase was not completed because the                         // customer canceled it or an error occurred.}     }             }

www.netcomlearning.com

Page 47: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Adding advertising to Windows 8 Apps

3

Set Ad Unit/App IDs in your AppSubmit Ad-enabled App to StoreTrack your success at PubCenter

1

Download Ad SDKAdd few lines of code to add AdsSupport for Metro HTML/XAML

2

Sign in to PubCenterRegister your app at PubCenterGenerate App ID and Ad Unit IDs

Activate Live AdsDownload Ad SDK Publish App to Store

www.netcomlearning.com

Page 48: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Thank You! Back to RinchenStick around for Raffle & Q&As

www.netcomlearning.com

Page 49: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Upcoming Webinars

• Free Webinar: CISSP | The 10 Essential Domains Revisited

• Free Webinar: Microsoft Dynamics GP | Excel, as a GP Report Writer• Free Webinar: Microsoft Dynamics AX 2012 - The Complete ERP Solution• Free Webinar: Lync Server 2013 Part 1 | Features and Functionality• Free Webinar: Windows 8 Virtualization• Free Webinar: SharePoint 2010 Review | Courses & Certifications • Free Webinar: Windows 8 Development - HTML5 with Live Demo• Free Webinar: Microsoft SQL Server 2012 | EIM Capabilities

• Free Webinar: Lync Server 2013 Part 2 | Architecture and Deployment Changes• Free Webinar: Microsoft SQL Server 2012 | Business Intelligence & Cloud Solutions• Free Webinar: Lync Server 2013 Part 3 | Integration and Extensibility

Sign up for free at: www.netcomlearning.com/webinars

www.netcomlearning.com

Page 50: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

Visual Studio Certifications

www.netcomlearning.com

HTML5 C#

Page 51: Introduction to Windows 8 Development C#/XAML Objectives  Introduction to Windows 8 Operation System Windows 8 Platform Windows Store

MCSD: Windows Store Apps Using C#

www.netcomlearning.com

*Free Second Shot Exam is Back

Training Schedules for MCSD: Windows Store Apps Using C#:

• Jan 14th| New York City & Live Online (Course 20483 only)• Feb 18th| Las Vegas & Live Online (Courses 20483 + 20484)