App primer
-
Upload
chris-johnson -
Category
Technology
-
view
2.670 -
download
0
Transcript of App primer
1 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
Getting started with apps.
Chris Johnson
Apps for SharePoint Primer
2 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
YammerHow to Join the Conversation1. Download the Yammer phone app from the iTunes, Windows Phone, or
Android App Store.2. Join your company network, if you haven't already, at
http://www.yammer.com.3. Go to https://www.yammer.com/microsoftmidwestcustomers and click
"request an invitation". When you receive the invitation click "accept."4. Go to
https://www.yammer.com/microsoftmidwestcustomers/groups/spschicago and click "join." You will receive a welcome message in 24-72 hrs.
5. Once you have access you will be able to download posted presentations, ask questions of any of the subject matter experts and participate in any conversations going on in the group
3 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
whoami?www.looselytyped.net
@LoungeFlyZ
Provoke Solutions – Consulting, Development
Ex-10yr Microsoftie, SharePoint Product
Management, Program Management and
Consulting Services
4 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
What we are going to cover The problem(s) today What changes in SharePoint 2013 How to get started building apps Tips and Tricks I have learnt along the way
5 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
What I want to you to take away today Development with SharePoint is changing Understand why this is happening Embrace change and use it to your
advantage Get started with the app model Build on my knowledge, don’t start from
scratch
6 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
The current problem with SharePoint Development
7 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
SharePoint Process(IIS w3wp.exe)
WSP
ResourcesXML/Features/Files
Code (DLL)
Farm solutions aka “Full Trust”
8 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
Sandbox Code Process(SPUCWorkerprocess.exe)
SharePoint Process(IIS w3wp.exe)
WSP
ResourcesXML/Features/Files
Code (DLL)
Sandbox solutions
9 | SharePoint Saturday Chicago 2013Twitter: @SPSChicago Hashtag #SPSChicago
The problems with the current situation Stability Security Management Cost
10 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
How this is being addressed?
11 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Overview of the App Model Office 365 and in on-premises farms Code never runs in SharePoint host process Calls have controlled authorization Apps can have permissions independent of
user permissions Apps deployed to private catalogs or online
Store
12 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
App Types SharePoint-Hosted Apps
All assets are in SharePoint No server code
Provider Hosted Backend is remotely hosted
Auto Hosted Backend is hosted for you in Azure by MS
13 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
SharePoint-Hosted Apps App resources added to
SharePoint host Stored in child site known
as app web App can have client-side
code App cannot have server-
side code
14 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Provider-Hosted Apps App resources deployed on
remote server Remote site known as
remote web App can have client-side
code App can have server-side
code
15 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Integration with SharePoint UI – App Parts and Menus Data/Operations - APIs to talk to
SharePoint Events – Remote Event Receivers
16 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
What is in an app? App consists of:
Zip file – Open Package Conventions AppManifest.xml WSP – declarative components only Code – deployed to “backend” SQL DB – optional - DACPAC
17 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
App Installation Scopes Site-Scoped Installation
App is installed in a specific site App is launched from same site This site is known as host web
Tenancy-Scoped Installation App installed > app catalog site App available many host webs Host webs access one app instance Centralizes app management
18 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Authentication/Authorization SharePoint site authentication stays the
same
Three models for apps: Cloud: Office 365 + ACS – OAuth On-Prem: Server to Server (S2S) -
Advanced Hybrid: SharePoint on Prem + Office
365 + ACS – Advanced
19 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
What’s covered?Component App
sFarm
Web parts XApp parts X ASP.Net server controls XASP.Net user controls XList and library templates X XContent types X XEvent handlers XRemote event receivers X Pages and page layouts XFiles X XMaster pages XRibbon and list actions X XWorkflows XApps for Office X Custom JavaScript list view renderings
X
Custom JS column renderings
20 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
I do X today, how do I do Y tomorrow? Richard diZerega “App Approaches to
Common SharePoint Customizations”
http://blogs.msdn.com/b/richard_dizeregas_blog
21 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Demo: SharePoint Hosted App
22 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Provider Hosted Apps Developer provides the backend Typically Windows Azure but can be
anything Visual Studio tooling is excellent
Packaging, Deployment, Debugging Development tools
Visual Studio 2012 or 2013 Office 365 tenancy (trial will do) Fiddler
23 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Provider Hosted Pros
Full control over the backend - Host anywhere you like (in theory)
Upgrade might be easier Upgrade the backend … leave the front end Caveat: You might need to support multiple front end
versions of your app Do any logging, tracing and management things you
like Cons
Costs of running backend Support and Management Ongoing commitment
24 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
OAuth 2.0 Primer What is OAuth?
Internet protocol for creating and managing app identity A cross-platform mechanism for authenticating apps Internet standard used by Facebook, Google
and Twitter
SharePoint 2013 use OAuth to establish app identity
25 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
How it works…
26 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Demo: My First Provider Hosted App
27 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Deploying Apps - App Catalog Private / enterprise marketplace for
organizations No certification process Seen only by that company
Enables license management & gateway for app procurement
Office 365 - 1:1 App Catalog per Tenant On-Premises - 1:1 + optionally have App
catalog per Web Application
28 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Office Store
29 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Getting your app in the store SharePoint Hosted or Provider Hosted only Paid Office 365 subscription needed Sellerdashboard.Microsoft.com
Create OAuth app IDs and Secrets Submit and Monitor your apps
Get paid License per seat or site license Subscription pricing per user per month
30 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Tips and Tricks1. Use SignalR for App tracing and
debugging2. Cache tokens3. Use the SharePoint cross-domain library4. Single Page Apps in SharePoint5. App CSS makes your app look like part of
the experience6. Elevate your SharePoint app’s permissions
with app-only calls
31 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Chris, this really is totally different from what we do today!?!?
32 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Sandbox Code Process(SPUCWorkerprocess.exe)
SharePoint Process(IIS w3wp.exe)
WSP
XML/Features/Files Code (DLL)
Sandbox solutions
33 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
SharePoint SiteApp
Package
App Resources Code (DLL)
Provider Hosted apps
34 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Go and try this today1. Sign up for Office 365
1. Free 30 day Trial2. MSDN get 1 year subscription benefit
2. Visual Studio 2013 1. Includes all the Office and SharePoint
apps tools3. Additional tools
1. Fiddler – http://fiddler2.com2. Fiddler Extension for SharePoint 2013
App Tokens (Kirk Evans Blog)
35 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
• WROX• Amazon
36 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Get in touch www.looselytyped.net @LoungeFlyZ
www.provokesolutions.com [email protected]
37 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Thanks to Our Sponsors!
38 | SharePoint Saturday Chicago 2013
Twitter: @SPSChicago Hashtag #SPSChicago
Housekeeping Please remember to submit your session
evaluation using our mobile application Follow SharePoint Saturday Chicago on
Twitter @spschicago & use hashtag #spschicago