maandag 6 augustus 2012

SharePoint 2013: SharePoint apps overview

In SharePoint 2013, one of the biggest new things is SharePoint apps. An app is the new way to add new functionality to your SharePoint environment. In fact, to avoid confusion, even lists are called apps from now on.

You have two main types of apps:
1. SharePoint hosted: all the resources and logic are hosted within SharePoint
2. Cloud based apps: developer hosted app (resources and logic are hosted outside of SharePoint, for example on an IIS website on a none SharePoint server) or resources and logic are hosted in Azure (Azure website + Azure SQL)

Very important to know is that apps cannot run server side code on a SharePoint server. You will have to use client side code (REST, CSOM (Client Side Object Model), oAuth) to do all your stuff. I will talk about REST and CSOM in future posts.

Apps can be distributed via Microsoft's Marketplace where you can download free and payable apps or you can setup your own corporate catalog running within your enterprise.

There are separate permissions for apps and it's not the same as user permissions in SharePoint. The difference is that apps will request certain permissions to the user during installation. This is done in the application manifest file. The user will then have to approve or reject this request. When rejected, the app is simply not installed.

When an app is installed on a specific web, SharePoint will for us create a new sub web, the application web. This web will host the resources of the installed app and will have a unique URL to provide app isolation. Isolation is a very important factor when talking about apps. It's important that apps cannot talk to each other and can access each-other's resources. The unique URL's avoid cross site scripting.
The app web is invisible when clicking the 'More' (former 'View all site contents') so this page is not overcrowded with websites. You can however list them using PowerShell.

The URL of such an app web looks something like this:

http://tenant-APP1UID.domain.com/GUIDAPP1

APP1UID: unique ID given to the app during installation. Will make each app domain unique.
GUIDAPP1: name of the SPWeb under which the app will be installed. By default, visual studio will propose a GUID when creating a new app. As a developer you can change  this value.

From a user perspective, you will have three types of experiences:
1. immersive app: the application takes over the entire UI, takes over the complete screen.
2. part app: a web part serving the app as a part of the screen.
3. extension app: more related to custom actions. Extension of the ribbon or ECB.

In future posts, I will talk in more detail about some of the aspects touched above.

Geen opmerkingen:

Een reactie posten