Download presentation
Presentation is loading. Please wait.
Published byKristian O’Connor’ Modified over 9 years ago
2
Andrew Coates - @coatsy Advanced Windows 10 development with the Office 365 APIs DEV33 5
3
Introduction Universal App projects Integrating Office 365 APIs Agenda
4
Vision z
5
Developer vision
6
Universal Windows Platform
7
A bigger opportunity with one Windows Windows 10
8
…and one app platform One Store + One Dev Center Full Support for Existing Code SDK + Services Adaptive User Interface Natural User Inputs
9
Tuned for every form factor
10
Adaptive UX
11
Tailored experiences
12
Universal Windows 8.1 apps #if WINDOWS_APP ResourceLoader loader = new ResourceLoader(); string about = loader.GetString("SettingsLabel/Text"); string privacy = loader.GetString("PrivacySettings/Text"); string options = loader.GetString("Settings/Text"); ISettingsService settings = container.RegisterSettingsService(); settings.RegisterFlyoutCommand (about); settings.RegisterFlyoutCommand (privacy); settings.RegisterFlyoutCommand (options); #endif
13
No more shared project and specific platforms project No more conditional code Only one Store The Universal Windows Platform is available on every Windows 10 device One binary for every device
14
It’s a collection of contracts and extensions When you create an app you target a version of the UWP, not of the operating system Universal Windows Platform
15
SDKs to add specific platform APIs on top of the Universal Windows platform Platform extensions
16
Integrating Office 365
17
Add Connected Service Registers application in Azure AD and imports necessary assemblies Create a data source XAML makes heavy use of data binding, embrace that paradigm Stateful client Initiate login/consent and store Discovery Context Add Office 365 to Universal App
18
Adding Connected Services
20
Installs NuGet Packages for Office 365 and dependencies Add Connected Service
21
Use Web Account Manager when… In most scenarios as this is the default for connected service wizard Your app targets Windows 10 and/or multiple logins (see example) Use Web Authentication Broker when… Your app uses AAD and ADFS only Your app targets Win7 and/or iOS/Android (via Xamarin) You need to target authentication flows not supported by WAM OAuth Implementation 21
22
Web Account Manager var webTokenRequest = new WebTokenRequest(aadAccountProvider, String.Empty, CLIENT_ID, WebTokenRequestPromptType.ForceAuthentication); webTokenRequest.Properties.Add("authority", AUTHORITY); webTokenRequest.Properties.Add("resource", resourceId); webTokenRequestResult = await WebAuthenticationCoreManager.RequestTokenAsync(webTokenRequest); Web Authentication Broker var authenticationContext = new AuthenticationContext(String.Format(AUTHORITY, TENANT)); var accessToken = (await context.AcquireTokenAsync(resourceId, CLIENT_ID, RETURN_URI)).AccessToken; Authentication Compared
23
Universal App template and Authentication demo
24
“Client” objects for each service ExchangeClient SharePointClient Constructor takes a “token getter” function DiscoveryContext wraps an AuthenticationContext AuthenticationContext has methods for getting tokens Office 365 Service Communication
25
“Client” object constructor example return new ExchangeClient(ExchangeServiceEndpointUri, async () => { return (await _discoveryContext.AuthenticationContext.AcquireTokenSilentAsync( ExchangeServiceResourceId, _discoveryContext.AppIdentity.ClientId, new ActiveDirectory.UserIdentifier( dcr.UserId, UserIdentifierType.UniqueId) ) ).AccessToken; });
26
Client Object exposes properties Most are IEnumerable collections Designed much like Entity Framework Client == DataContext IEnumerable entities Includes common CRUD operations
27
Office 365 UWP App demo
28
Jordan Knight Xamling jakkaj@xamling.net @jakkaj
29
See your day in a single glance Day Bar Office 365 UWP + serial port access Arduino Led strip (and some other bits and bobs)
30
Make(er) one yourself! Find all the instructions, links and components (more links) at https://github.com/jakkaj/daybar It’s pretty simple… Some basic wiring Some C code (but not much!) Some C#
31
Quick run through Jordan Knight
32
Day Bar code and links Find all the instructions, links and components (more links) at https://github.com/jakkaj/daybar Arduino VS plugin: http://www.visualmicro.com/http://www.visualmicro.com/ Office 365 Windows starter: https://github.com/OfficeDev/O365-Windows-Starthttps://github.com/OfficeDev/O365-Windows-Start Remember: you need an Office 365 developer account (free with Bizspark etc.)
34
Introduction Universal App projects Integrating Office 365 APIs Summary
35
PRD322 – A Day in an Office Developer’s Life Yesterday at 09:45. It’ll be on Channel9 DEV 326 – Word, Excel, PowerPoint Add-ins Yesterday at 17:00. It’ll be on Channel9 DEV327 – Outlook Add-ins. Yesterday at 18:30. It’ll be on Channel9 DEV334 – Windows 10 Development with O365 APIs This was it. You want MORE?
36
Getting Started with APIs Mobile dev Code Samples Mobile dev Training videos & hands on labs Office 365 API documentation
38
@OfficeDev StartStart
40
Continue your Ignite learning path Visit Microsoft Virtual Academy for free online training visit https://www.microsoftvirtualacademy.com Visit Channel 9 to access a wide range of Microsoft training and event recordings https://channel9.msdn.com/ Head to the TechNet Eval Centre to download trials of the latest Microsoft products http://Microsoft.com/en-us/evalcenter/
41
Andrew Coates - @coatsy Advanced Windows 10 development with the Office 365 APIs DEV33 5
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.