Introduction to the new SharePoint 2013 App Model


Published on

The new SharePoint 2013 App Model gives SharePoint developers a whole new platform to develop apps for Office and SharePoint using standard development languages, tools, and hosting services. SharePoint Apps are basically web applications that can be in any language, such as HTML, JavaScript, PHP, or .NET, using familiar web development tools such as Microsoft Visual Studio 2012, and a new web-based tool called "Napa" Office 365 Development Tools to build apps for SharePoint.

Published in: Technology
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Farm Solutions:Custom code was deployed to the server.Lots of other things to deploy to the serverMost deployments required IT Pro with access to upload solutionServer outages and most SharePoint errors could usually be traced to custom code deployed to the server Only available with on-prem deployments and not with hosted deployments Sandbox solutions:limited in the number of things you can doDevelopers work a subset of full server-side API blocked from making external database or web service callsBoth optionsrequire developer with solid understanding of SharePoint server-side API
  • Self-contained pieces of functionality extending SharePointcapabilitiesEasy to use stand alone applicationsAble to download and purchase them from the Office Store or the App CatalogThey run outside of the core SharePoint framework so allow developers to create any application they can imagineUse standard web technologies like html, JS and CSS
  • Demo: Office 365 Preview Site Apps in Site Content
  • App Isolation:prevents unauthorized access to users’ data. Isolation prevents apps from talking to each otherIsolation level determines the limit to potential breaches in security. You get to specify the level of access you are giving to the app.By default, apps are deployed to their own web site in a special, isolated domain, rather than to your farm or a sandbox. Processes run in that domain. When you install an app, SharePoint creates a special subsite in the existing site where the app is installed (the AppWeb). This site gets a special URL that looks something like this: site domain calls and cross site scripting are blockedHosting:Apps for SharePoint can be self-hosted by a developer, auto-provisioned by Azure, hosted by SharePoint, or a combination of these. All can leverage SharePoint components. Custom server code can only be run in developer self-hosted or Azure auto-provisioned hosting options. Monitoring:Farm administrators and SharePoint Online Service Administrators can monitor apps for SharePoint and respond to errors and issues. Site owners can manage apps and licenses for their sites/usersDemoApp URL
  • Demo:Developer SiteNAPANew App
  • DEMOVisual Studio 2012 SharePoint Templates
  • Full Page, App is listed on the Site Contents page of the host web,the app runs in full-screen mode. Chrome Control help your apps maintain a consistent look and feel with SharePoint, it enables you to add the SharePoint navigation header area to your app pages, including pages hosted externallyApp part, a type of Web Part that is represented by the ClientWebPart class. This kind of Web Part is essentially a wrapper for an IFrame that would host a page of the appCan have custom Tool Part to customize the App PartUI Custom Actions such as custom Ribbon controls or customize the new Callout feature (used to be ECB menu)Demo:Full pageApp PartTool PartUI Custom Action
  • The OAuth 2.0 authorization protocol enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf.SharePoint 2013 Preview introduces a Representational State Transfer (REST) service that is fully comparable to the client object models. In SharePoint 2013 Preview, nearly every API in the client object models will have a corresponding REST endpoint.developers can interact remotely with the SharePoint object model by using any technology that supports REST web requestsPermission applies to all children in the scopeDemo/_api/web
  • DemoSharePoint Store and Tip of the Day App
  • DemoSeller Dashboard
  • Introduction to the new SharePoint 2013 App Model

    1. 1. Noorez Khamis@nkhamis
    2. 2. Speaker Bio twitter: @nkhamis blog: Rez’s SharePoint Blog Spot -
    3. 3. First things first – we aren’t losing anything! (yet) Farm Solutions Sandbox Solutions Apps • Full trust solutions • Declarative elements • New Apps model • Partially trusted code with • Deployed from corporate Cloud Hosted • Access to file systems • Classic model from 2007 limited API support catalog or office market • Deploy to the GAC • DLL’s and .NET Managed place • Access to the 14 Hive Code • Manage permission and • No access to server licenses specifically SharePoint Hosted • DLL’s and .NET Managed Code • Preferred option • No server code! ---------------- Solutions Model -------------------- ------ App Model ------
    4. 4. Tip of the DayApp
    5. 5. Apps – What are they?
    6. 6. Now - Everything is an App!
    7. 7. Why use Apps?
    8. 8. Why did Microsoft go down the “App Route”? Get our code out of SharePoint!
    9. 9. App Hosting Options Developer-Hosted App SharePoint “Bring your own server hosting infrastructure” Your Hosted SiteCloud-based Apps Web Developers will need to isolate tenantsGet remote events fromSharePointUse CSOM/REST + Azure Auto-Provisioned AppOAuth to work with SP Windows Azure + SQL Azure SharePoint Azure provisioned invisibly as apps are Web installed SharePoint-hosted App Parent Provision an isolated sub web on a parent Web web • Reuse web elements (lists, files, out-of-box web parts) App Web • No server code allowed; use client JavaScript for logic, UX animated
    10. 10. Development Environment for your Apps hardware and software requirements CloudShare Amazon Web Services EC2 Windows Azure Virtual Machines Office 365 with SharePoint 2013 Preview SharePoint 2013 Developer Site
    11. 11. App creation options 155
    12. 12. App Project AnatomyPAGES SCRIPTSHome.aspx App.js Main page of the app Template script file Web Part Page Elements.xml Script and Style Installs script file to isolated references app siteElements.xml Installs home page to the isolated app siteSTYLES APP MANIFESTApp.css AppManifest.xml Template style sheet ProductID, Version, TitleElements.xml Tile and StartPage Urls Installs css to isolated app AppEvent Urls: Installed, Uninstalling, site Upgraded App Permission requests
    13. 13. App UI Access Options
    14. 14. Communication between Apps & SharePoint
    15. 15. App most basic form – AppManifest.xml<App xmlns="" ProductID="{626f8547-39e1-4406-9f11-8bedfcfdb46f}" Version="" SharePointMinVersion="" Name="ATSPETipOfTheDay"> <Properties> <Title>Tip of The Day</Title> <StartPage>~appWebUrl/Pages/Default.aspx?{StandardTokens}</StartPage> </Properties> <AppPrincipal> <Internal /> </AppPrincipal> <AppPermissionRequests /></App>
    16. 16. Options for Publishing AppsNote: Developers can use the new “Developer” site template to test outtheir apps
    17. 17. Publishing Apps to the Office Store
    18. 18. Apps for Office and SharePoint Contest
    19. 19. Demo
    20. 20.