Office 365 Development

46 Slides9.36 MB

Office 365 Development

Course Agenda Introduction to Office 365 Development Module 1: Overview of Office 365 Development Module 2: Getting started with Apps for Office Module 3: Getting started with Apps for SharePoint Module 4: Getting started with the Office 365 APIs Module 5: Moving Full Trust Code to the Cloud Using Repeatable Patterns and Best Practices Module 6: Getting started with Mobile development with Office 365 Module 7: Setting up your Developer environment in Office 365 Module 8: Setting up your on-premises environment for app development

Getting started with Mobile development with Office 365

Agenda Intro Windows Platform Non-windows Platforms Multi-platforms

Getting started with Mobile development with Office 365 Intro

Choices for Mobile Development 1. 2. 3. 4. 6 Target the Windows Platform Develop apps that run in Windows and Windows Phone Target the Android Platform Develop apps that run on Android devices Target the iOS Platform Develop apps that run on iOS devices such as iPhone and iPad Target Multiple Platforms Develop apps which can be targeted for more than one platform Use Cordova to develop apps which target Android, iOS and Windows Phone Use Xamarin to develop apps which target Android, iOS and Windows Phone

Vision EXTEND OFFICE EVERYWHERE CONNECT TO OFFICE 365 SERVICES BUILD USING AN OPEN PLATFORM Delve z Users and groups Files Mail Calendar My Apps Video Portal Contacts Office GraphPresentation Document s s Spreadshee ts Lync OneNote Yammer

Getting started with Mobile development with Office 365 Windows Platform

Universal App project template 9

Adding Connected Services 1Project Add Connected Service 2 Register your app 10

Connected Services Permissions 3Select required app permissions 11

“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; }); 12

Authentication UI 13

Office 365 Service Communication Client Object exposes properties Most are IEnumerable T collections Designed much like Entity Framework Client DataContext IEnumerable T entities 14 Contact Event

demo WINDOWS 8

Getting started with Mobile development with Office 365 Native Platforms

Getting Started with the Android SDK

The New Android Platform IDE 18

Office 365 SDK for Android Available today on GitHub http://dev.office.com/Android SDK for native Android apps that use Office 365 APIs Handles files, lists, contact, mail, and calendar Integrates with AD authentication library

demo ANDROID

Developing for iOS Developing for iOS requires a Mac (or something running iOS) Apple does not permit compilation of iOS apps on a non-iOS computer or device You either need (1) a Mac or (2) a Windows PC that’s paired with a Mac nearby Developing iOS apps The primary programming language is Objective C Many developers use the XCode IDE provided by Apple XCode also installs iOS SDK

Office 365 SDK for iOS Available today on GitHub http://dev.office.com/iOS SDK for native iOS apps that use Office 365 APIs Handles files, mail, contact and calendar Integrates with AD authentication library

demo IOS

Getting started with Mobile development with Office 365 Multi-platform

What is a Hybrid App? An app created with HTML5, CSS3 and JavaScript Available through an app store Different than a mobile web site Hybrid app runs in browser of mobile device 25 Chromeless (no browser title bar, navigation buttons, etc.) HTML, CSS and JavaScript downloaded and run locally from device App launched in full screen mode User isn’t aware that app is using browser

What is Cordova? A platform for developing hybrid apps with HTML, CSS and JavaScript An open source collection of JavaScript device APIs Something that abstracts away device specific APIs Toolsets built on top of Cordova PhoneGap (Abode) AppBuilder (Telerik) 26

Multi-Device Hybrid Apps for Visual Studio

Creating a Cordova App Use the Blank App (Apache Cordova) template Templates JavaScript Multi-Device Hybrid Apps

Debugging with Ripple Included with Android SDK Runs inside Chrome browser

Debugging with Windows Phone You can use a Windows Phone emulator You can use an attached Windows Phone device 30

demo CORDOVA

What is Xamarin? A Company and a Development Platform Developing on Xamarin platform requires monthly or yearly subscription You can get a free 30-day trial (90-day trial available for MSDN subscribers) Xamarin Development based on the .NET framework You write code using C# and the .NET framework class libraries Xamarin Platform supported across many OSs and devices Android iOS and Mac Windows and Windows Phone 32

Evolution of the Xamarin Platform Xamarin Platform’s Key Value Proposition Provide update-to-date versions of .NET on Xamarin.iOS and Xamarin.Android Allow you to leverage skills you already have with Visual Studio, C# and .NET Support latest C# features such as support for async and await Mono MonoTouch Xamarin.iOS iOS iOS Mono for Android Xamarin.Android Android Android CLR & .NET Linux

Xamarin Setup Visual Studio 2013 with Update 4 Install Xamarin 34

Creating an Android App Project

Android Layouts UI layout decoupled from UI management code UI Layouts created in XML-based resource files with .axml extensions Xamarin adds Android layout design editor into to Visual Studio 36

Adding Connected Services 1Project Add Connected Service 2 Register your app 37

C# Code to Authenticate the User

Authentication Flow 39

demo XAMARIN

Summary Intro Windows Platform Non-windows Platforms Multi-platforms

Building skills Microsoft Virtual Academy dev.office.com/training Code Samples dev.office.com/code-samples DX Office 365 Dev Camps Office 365 Summit Developer Tracks summit.office.com

Developer Patterns & Practices Transform your code Providing App Model Patterns for common SharePoint Full Trust Code and Office Add-in scenarios 60 Visual Studio projects Common scenarios Branding Site provisioning Remote event receivers Large file support Taxonomy driven navigation And much more aka.ms/ OfficeDevPnP

Roadmap Monthly updates Associated blog posts www.office.com/roadmap

Customer feedback Yammer Office 365 Technical Network Stackoverflow UserVoice Developer focused Bi-weekly triage Link to roadmap to show actions http://aka.ms/OfficeDevFeedback

2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Back to top button