201500912 Hello Windows 10

Post on 21-Jan-2017

632 views 0 download

Transcript of 201500912 Hello Windows 10

Hello Windows 10앱개발

김영욱 Evangelist

Yowkim@Microsoft.com

기초체력단련

http://windows.Microsoft.com

Phone Small Tablet2-in-1s

(Tablet or Laptop)Desktops

& All-in-OnesPhablet Large TabletClassic Laptop

Xbox IoTSurface Hub Holographic

Windows 10

http://windows.Microsoft.com

One Store +One Dev Center

Reuse Existing Code

One SDK + Tooling

Adaptive User Interface

NaturalUser Inputs

One Universal Windows Platform

http://windows.Microsoft.com

Universal Windows Platform

A single API surfaceA guaranteed API surface

The same on all devices

PhoneDevice

XboxDevice

DesktopDevice

Windows Core

Universal Windows Platform

http://windows.Microsoft.com

Windows app

A single binary Running on any device

Testing for capabilities

Adjusting to devices

PhoneDevice

XboxDevice

DesktopDevice

Windows Core

Universal Windows Platform

Windows App

http://windows.Microsoft.com

Windows 10operating system

Bridging technologies

Win32desktop

Webhosted

JavaAndroid

Obj.CiOS

Universal Windows Platform

WWAC++& CX

.Netlanguages

HTMLDirectX

XAML

C++

.Netlanguages

MFCWFWPF

.Netruntime

http://windows.Microsoft.com

Multi-language

C# and XAML

https://msdn.microsoft.com/library/windows/apps/dn765018.aspx

JavaScript and HTML

https://msdn.microsoft.com/library/windows/apps/mt280216.aspx

C++ and XAML

https://msdn.microsoft.com/library/windows/apps/dn996906.aspx

http://windows.Microsoft.com

Universal Windows Platform

One Operating SystemOne Windows core for all devices

One App PlatformApps run across every family

One Dev CenterSingle submission flow and dashboard

One Store Global reach, local monetization Consumers, Business & Education

앱개발준비

Visual Studio 2015 를설치하자.

http://windows.Microsoft.com

http://windows.Microsoft.com

Visual Studio 2015 Editions

EnterpriseArchitecture Modeling, Diagnostics, VSO/ALM & Release Management

ProfessionalArchitecture Validation, VSO/ALM & Feedback Management

Community EditionsVisual Studio Professional Edition

https://www.visualstudio.com/ko-kr/downloads#d-express-windows-8?CR_CC=200395106

개발자등록하기

https://msdn.microsoft.com/library/windows/apps/dn765018.aspx

http://windows.Microsoft.com

사전준비작업

개발자등록

https://msdn.microsoft.com/library/windows/apps/bg124287.aspx

개인 or 회사계정중선택할수있다. (변경불가)

회사계정의경우등록에시일이추가로걸리기때문에미리신청해두는것이좋다.

http://windows.Microsoft.com

Developer unlock

Developer Mode

http://windows.Microsoft.com

A Developer’sGuide to Windows 10

http://www.microsoftvirtualacademy.com/training-courses/a-developers-guide-to-windows-10

Adaptive UI! Adaptive Code!

http://windows.Microsoft.com

Adaptive design

Phone (portrait)

Tablet (landscape) / Desktop

http://windows.Microsoft.com

Platform extensions

Device-specific APIFamily-specific capabilities

Compatible across devices

Unique update cadence

PhoneDevice

XboxDevice

DesktopDevice

Windows Core

Universal Windows Platform

Windows App

Phoneextension

Xboxextension

Desktopextension

http://windows.Microsoft.com

Adding extensions

http://windows.Microsoft.com

Extension SDKs

UWP

Windows Core Windows Core Windows Core Windows Core

UWP UWP UWP

Desktop Mobile Xbox More…

http://windows.Microsoft.com

Testing for capabilities

IsApiContractPresentIsEnumNamedValuePresentIsEventPresentIsMethodPresentIsPropertyPresentIsReadOnlyPropertyPresentIsTypePresentIsWriteablePropertyPresent

Windows.Foundation.Metadata.ApiInformation

http://windows.Microsoft.com

Test capabilities at runtime

var api = "Windows.Phone.UI.Input.HardwareButtons";

if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent(api))

{

Windows.Phone.UI.Input.HardwareButtons.CameraPressed

+= CameraButtonPressed;

}

SplitViewLayout ControlsAppBarNetworkingLinqData BindingSQLite…

https://www.microsoftvirtualacademy.com/ko/training-courses/windows-10-100--12453

Bridge

http://windows.Microsoft.com

iOSObjective C

http://windows.Microsoft.com

Let’s talk about bridge technologies

Objective-CAt Build we announced iOS code can be reused in a Windows app

https://dev.windows.com/en-us/uwp-bridges/ios

AndroidAt Build we announced Android code can be reused in a Windows app to run on Windows Phonehttps://dev.windows.com/en-us/uwp-bridges/android

WebAt Build we announced web sites can be wrapped to run on Windows

https://dev.windows.com/en-us/uwp-bridges/web-apps

Win32At Build we announced that Classic Windows Apps (CWA) can be packaged as an Appx

https://projectipreviewsignup.windows.com/

Hosted Web Apps

App Store (iOS, Android, Windows…)

Native app container

WebView

Web Site

custom bridgeNative Code

Hosted Web App architecture today

App Store

Native app container

WebView

Web Site

Native Code

Hosted Web App in Windows 10

Windows APIs

Hosted Web Apps

Native APIs

Native APIs

if (typeof Windows != ‘undefined’) {

// Create an appointment with

Windows.ApplicationModel.Appointments.A

ppointment();

}

W3C Standard{"name": "Super Web App","short_name": "SuperWA","start_url": "http://www.example.com",

"icons": [{"src": "tiny.png","sizes": "70x70"

},{"src": "square.png","sizes": "150x150"

},{"src": "apple-touch-icon-72x72-precomposed.png","sizes": "72x72"

},{

"src": "niceicon.png","sizes": "128x128"

}],"display": "standalone","orientation": "landscape"

}

http://w3c.github.io/manifest/

XboxIoTUniversal

Windows Platform

Middleware Platforms

Middleware Partners (e.g., Xamarin)

Game Engine Partners (e.g., Unity)

Windows Platform

Universal Windows 8 Apps (C++/C#/JS)

Universal Windows 10 Apps (C++/C#/JS)

Project Centennial (Classic Apps))

Web Platform

Microsoft Edge HTML Engine

Cordova Tooling (HTML/JS)

Hosted Web Apps (HTML/JS)

Other Mobile Platforms

Project Astoria (Java/C++)

Project Islandwood (Objective C/C++)

Other Mobile Platforms

Project Islandwood

Project AstoriaUse your Java / C++ code

Use Android IDE

High code reuse

Use your Objective C code

Use Visual Studio

Medium-high code reuse

Wherever your code was born, you can bring it to Windows

We translate and redirect Android concepts to Windows concepts

User experience Cloud services Platform

• Acquisition

• Input and interaction

• App-to-app interactions

• Windowing & navigation

• Notifications and live tiles

• …

• In-App Purchases

• Ads

• Maps

• Game Services

• Analytics

• Notification service

• …

• File system

• Contacts, photos,…

• Sensors

• Camera

• Hardware accelerated

graphics & Direct X

• …

Apps built with Project Astoria are Windows apps

Users acquire apps built with Project

Astoria through the Windows Store

User experience

Cloud services

Platform

Apps built with Project Astoria are Windows apps

v/sv/sv/s

User experience

Cloud services

Platform

Microsoft Services

AppInsights

MS Ads

In-app Purchases

Windows Notification Service

Xbox Live Services

Bing Maps

Windows Location services

• Project Astoria SDK in Java

• Use Microsoft services with minimal code change

• Get Started in Dev Center

Windows apps built with Project Astoria use Microsoft cloud services

User experience

Cloud services

Platform

Android platform capabilities are redirected to Windows

• File system

• Contacts, photos,…

• Sensors

• Camera

• Hardware accelerated graphics &

Direct X

• Networking/sockets

• Application lifecycle

• Resource management

• Background execution model

• Security model

User experience

Cloud services

Platform

Windows resource management

Runs directly on top of Windows kernel

User experience

Cloud services

Platform

Keeping users safe

User experience

Cloud services

Platform

Trusted Store Secure Device Monitoring & Response

Keeping users safe

User experience

Cloud services

Platform

Trusted Store Secure Device Monitoring & Response

Windows 10 Mobile Only

+

Your Android Code(Project Astoria SDK & App analysis)

+

Your app in the

Windows Store

Your IDE(Project Astoria Plugins)

Your dev

machine

Build a Windows app with your Android code

+

Windows

Magic

Live tiles

IntelliJ

Android

Studio

Eclipse

Windows

Mac

Stop by the Project Astoria booth.

Try our Quick Start Challenge.

Sign-up to stay posted on new developments.

Learn more about Project Astoria at http://aka.ms/projectastoria

Come hang out with us .

앱등록하기

Windows 10 IoT Core

Raspberry Pi 2 Intel Galileo DragonBoard