SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Develop iOS and Windows Store Apps using 
Office 365/SharePoint 2013 
Kashif Imran 
Kashif_imran@hotmail.com
Agenda 
 What are iOS and Windows Store Apps 
 Why build iOS/Windows Store Apps 
 Why use SharePoint/Office 365? 
 Demo - Service Request Management App for iOS and Windows 
Store 
 Development Platform 
 SharePoint APIs 
 Which API to Use? 
 SharePoint CSOM 
 Demo – Customer Portal Code Review 
 Office 365 Authentication 
 REST/OData 
 Demo – Staff Portal Windows Store App Code Review 
 Demo – Staff Portal iOS App Code Review 
 Questions?
What are iOS and Windows Store Apps 
 Immersive 
 Touch First 
 Full screen experience without any chrome 
 Support different layouts and
What are iOS and Windows Store Apps 
(cont.) 
 Sandboxed 
 Distributed via App Store/Windows Store 
 Application Styles 
 Productivity applications (Contacts, Photos) 
 Utility applications (Weather, Stocks) 
 Immersive applications (Living earth, Carpenter)
Why build iOS or Windows Store Apps 
 Web apps vs. Native Apps 
 Advanced BI Visualization 
 Offline Scenarios 
 Device specific features 
 Examples: 
 Facebook (HTML5 or Native) 
 YouTube 
 …
Mobile Development Characteristics 
 Compact screen 
 Different device orientations 
 Limited memory 
 Usually one app at a time 
 Minimal help 
 No Quit button 
 External events interrupt program flow 
 Store state when stopping
Why use SharePoint/Office 365? 
 Team productivity 
 Document management 
 Tailored solutions 
 Cot effective file sharing 
 Privacy 
 Security 
 Compliance 
 Anywhere anytime access to data 
 Rich set of capabilities 
 Less training 
 Deploy your way (cloud, on-prem, hybrid) 
 Financially backed 99.9% backed SLA 
 Enterprise grade support
Service Request Management App for iOS 
and Windows Store 
SharePoint 
2013 
Office 365 
Customer Portal 
Customers 
submit service 
requests from 
public facing 
site. 
Staff Portal 
Windows Store 
App 
Staff Portal 
iOS App
Development Platform 
 Windows Store Apps 
 Windows 8 
 HTML 5 and JavaScript 
 XAML and C#/VB/C++ 
 DirectX and C++ (Games) 
 Visual Studio 2012 
 $49 for Individual, $99 Companies 
 iOS Apps 
 Mac - OS X 
 Objectv-C 
 Xcode 
 iOS 5+ support ARC 
 $99
Cross-Platform mobile apps 
 Xamarin 
 Miguel de Icaza 
 Mono: open source ECMA standard compliant .NET 
Framework compatible set of tolls including Compiler 
and CLR 
 MonoTouch:C# and .NET based application that run 
on iPhone. MonoTouch apps are compiled down to 
native machine code. 
 iOS, Android and Mac apps in C# 
 Xamarin Studio or Visual Studio
SharePoint APIs 
 Server Object Model 
 Client Object Model 
 .NET Client OM 
 Silverlight (and Mobile) Client OM 
 JavaScript Client OM 
 REST/OData Endpoints 
 ASP.NET (asmx) web services 
 Only supported for backward compatibility 
 Direct Remote Procedure Calls (RPC) calls to the 
owssvr.dll 
 Only supported for backward compatibility
Which API to use? 
 Type of Application 
 Farm Solutions (w3wp.exe) 
 With great power comes great responsibility 
 Sandboxed Solutions (SPUCWorkerProcess.exe) 
 “SharePoint sandboxed solutions are deprecated in SharePoint 
2013 in favor of developing apps for SharePoint, but sandboxed 
solutions can still be installed to site collections on SharePoint 
2013.” MSDN 
 SharePoint Apps (SharePoint-Hosted, Cloud-Hosted) 
 Custom Logic in apps is distributed down to the client or up to the 
cloud 
 Must use one of the client object models or REST/OData endpoint 
 External Applications 
 LAMP web apps, iOS/Android apps 
 Existing Skills 
 JavaScript, ASP.NET, REST/OData, Silverlight, PowerShell 
 Target Device
SharePoint Extension Types 
Source: MSDN
SharePoint CSOM 
 API to build remote applications 
 Contains subset of functionality that is available in Server Object Model 
 Many administrative functions are not available in CSOM 
 Underlying communications is encapsulated in the runtime 
 CSOM Implementations 
 .NET Client OM 
 Silverlight Client OM 
 JavaScript Client OM 
 Type names are similar to Server Object Model but do not have prefix SP as type names in Server OM 
Server OM Managed/Silverlight 
Implementation 
JavaScript 
Implementation 
SPContext ClientContext SP.ClientContext 
SPSite Site SP.Site 
SPWeb Web SP.Web 
SPList List SP.List 
SPListItem ListItem SP.ListItem 
SPField Field SP.Field
SharePoint CSOM
CSOM Updates in SharePoint 2013 
 client.svc has been extended to support direct RESTful calls 
 OData complaint implementation and support of HTTP GET, 
PUT, POST, MERGE and DELETE 
 New APIs for Server functionality 
 Business Data 
 Search 
 Publishing 
 User Profiles 
 Taxonomy 
 Feeds 
 Sharing 
 Workflow 
 E-Discovery 
 IRM 
 Analytics
CSOM in SharePoint 2010 
 Direct access to client.svc is not supported 
 ListData.svc for REST calls and available in SP2013 
only for backward compatibility
CSOM Architecture
.NET Client OM 
 Queries are sent to the SharePoint server in batches 
 Microsoft.SharePoint.Client.dll 
 Microsoft.SharePoint.Client.Runtime.dll 
 Root15ISAPI 
 ClientContext 
 Load 
 Populates objects in place 
 LoadQuery 
 Returns results for query 
 ExecuteQuery or ExecuteQueryAsync on ClientContext 
 Collection and even some non collection properties are not loaded 
by default
.NET Client OM - Load
.NET Client OM - LoadQuery
Demo – Customer Portal
Office 365 Authentication 
Source: Omar Venado’s Blog: 
http://blogs.msdn.com/b/omarv/archive/2012/10/25/windows-8-store-apps-office-365-enterprise-preview-sharepoint-online.aspx
Use Managed CSOM in Windows Store App 
 Add new project using Windows Runtime 
Component template in VS2012 
 Add references to Microsoft.SharePoint.Client and 
Microsoft.SharePoint.Client.Runtime 
 Access Managed CSOM from C# or Javascript in 
Windows Store App
REST 
 REST VS SOAP 
 Lightweight and easier to implement for various 
types of potential clients 
 Various open source JavaScript libraries that support 
REST based programming 
 Facebook, LinkedIn, Twitter all has REST APIs 
 Results are returned as JSON VS ATOM 
 Results can be cached by proxy servers 
 SOAP: Same URL, request is in header 
 REST: Separate URL for different queries or 
operations
OData (Open Data Protocol) 
 Web protocol for querying and update data 
 Build upon web technologies, HTTP, AtomPub and 
JSON 
 Ignores some of the REST constraints 
 Data is served up as XML or JSON in Atom Feed 
 Microsoft, SAP AG, IBM, Citrix, Progress Software 
and WSO2 
 OData services: Netflix, Azure 
 OData clients: Excel 2010/2013
OData Terms and Concepts 
 Built on Entity Data Model 
 Collections contain Entries like Tables contain Rows 
 Collections can be associated like Tables can be related 
 Entry has properties like Table Row has columns 
 Collections always have keys like Tables may have keys 
 Browse to service root of OData service usually returns 
all available Collections 
EDM OData 
Entity Set Collection 
Entity Type Entry 
Property of an Entity Type Property of Entry 
Navigation Property Link
OData URIs 
 Service root URI 
 Resource path 
 Query string options 
Source: odata.org
Northwind OData Queries 
 Available Collections 
 http://services.odata.org/Northwind/Northwind.svc/ 
 Metadata: 
 http://services.odata.org/Northwind/Northwind.svc/$metadata 
 Query Entity Set (Collection) 
 http://services.odata.org/Northwind/Northwind.svc/Customers 
 Customer With Single Entry 
 http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS') 
 Get One Property: 
 http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/Address 
 Value of a Property: 
 http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/Address/$v 
alue 
 Collection of related Links without actual entries: 
 http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/$links/Orde 
rs 
 Related Entries: 
 http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/Orders(106 
43)/Order_Details
Query Language 
 Options: $filter, $sort, $orderby, $top, $expand, $skip, 
$take, $metadata… 
 Operations: eq, ne, gt, ge, lt, le, and, or, not, mod, add, 
sub 
 Functions: startswith, substring, replace, tolower, trim, 
round, ceiling, day, month, year, typeof,… 
 Top 3 Customer from USA Order By ContactName 
 http://services.odata.org/Northwind/Northwind.svc/Customers? 
$filter=Country eq 'USA'&$orderby=ContactName&$top=3 
 Return related Entries Inline 
 http://services.odata.org/Northwind/Northwind.svc/Customers(' 
LETSS')/$links/Orders 
 Get Data in JSON Format 
 http://services.odata.org/Northwind/Northwind.svc/Customers(' 
LETSS')?$expand=Orders&$format=JSON
CRUD Operation and HTTP Verbs 
 Standardize CRUD operations using HTTP verbs 
such as GET, PUT, POST and MERGE 
 Methods are mapped into Navigator operations via 
GET (list.getByTitle) 
CRUD Operation HTTP Verb 
Read GET 
Create POST 
Update PUT or MERGE 
Delete DELETE
SharePoint REST URLs 
 _api => _vti_bin/client.svc 
 _api/web/lists 
 _api/web/lists/lists(guid) 
 _api/web/lists/getByTitle(‘Announcements’) 
 _api/web/lists/getbytitle(‘Announcements’)/items(2)/F 
ieldValuesAsHtml/$select=Title,Author 
 _api/web/getAvailableWebTemplates(lcid=1033) 
 _api/web/?$select=title,id 
 _api/web/lists/getByTitle(‘mylist’)?$select=title,firstna 
me 
 _api/web/lists/getByTitle(‘customers’)?$select=title,fir 
stname&startswith(Title, ‘p’)
Demo - OData Queries in Browser 
Demo
OData: ATOMPub Format 
 ATOMPub: The Atom Publishing Protocol 
 Application level protocol for publishing and editing web 
resources. 
 Based on HTTP transfer of Atom-formatted 
representations. 
 ACCEPT = application/atom+xml 
 XML Parsing on client side (Easy in Managed Code) 
 XML is default for SharePoint REST calls
ATOM-Formatted Data Example
JSON 
 Lightweight data-interchange format 
 Easy for humans to read and write 
 Easy for machines to parse and generate 
 ACCEPT = application/json;odata=verbose 
 Client libraries like datajs 
 Hierarchically in arrays and /or in 
key-value storage 
 Characters [] enclose arrays 
 {} key value pairs 
 “” enclose text values
Helpful Classes in iOS for REST Calls 
 NSURLConnection 
(synchronous, Asynchronous, delegate methods) 
 NSURLRequest 
 NSURLResponse 
 NSError 
 NSData 
 NSJSONSerialization 
 NSDictionary 
 NSArray 
 JSON Item Converstion: 
 Array of Items => NSArray 
 Key-Value storage => NSDictionary 
 String => NSString 
 Numbers => NSNumber 
 Null values => NSNull 
 NSXMLParser
Helpful Classes for Windows Store App 
REST Calls 
 HttpClient 
 CookieContainer 
 JsonObject 
 JsonArray 
 Dictionary<string, IJsonValue>
Updates and the Form Digest 
 Form Digest can be acquired through 
 http://site/_api/contextinfo 
 http://site/_vti_bin/sites.asmx 
 Special value created to protect again replay attack 
 SharePoint adds this control through master page 
 Web service clients need to acquire Form Digest 
manually
Demo – Windows Store App
Demo – iOS App
References 
 Choose the right API set in SharePoint 2013 
 How to: Complete basic operations using SharePoint 2013 
client library code 
 How to: Complete basic operations using JavaScript library 
code in SharePoint 2013 
 How to: Access SharePoint 2013 data from remote apps using 
the cross-domain library 
 Programming using the SharePoint 2013 REST service 
 How to: Complete basic operations using SharePoint 2013 
REST endpoints 
 Host webs, app webs, and SharePoint components in 
SharePoint 2013 
 Build mobile apps in SharePoint 2013 
 http://www.odata.org/
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)Kashif Imran
 
Developing a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appDeveloping a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appTalbott Crowell
 
SharePoint 2013 REST APIs
SharePoint 2013 REST APIsSharePoint 2013 REST APIs
SharePoint 2013 REST APIsGiuseppe Marchi
 
App Model For SharePoint 2013
App Model For SharePoint 2013App Model For SharePoint 2013
App Model For SharePoint 2013Toni Il Caiser
 
Designing for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsDesigning for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsRoy Kim
 
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...Nik Patel
 
Understanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST APIUnderstanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST APIChris Beckett
 
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienDeep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienChris O'Brien
 
SharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelSharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelG. Scott Singleton
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSPC Adriatics
 
SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013
SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013
SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013NCCOMMS
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Modelbgerman
 
Introduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST APIIntroduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST APISparkhound Inc.
 
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer PlatformSoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer PlatformIvan Sanders
 
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...Ivan Sanders
 
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSanjay Patel
 
Taking Advantage of the SharePoint 2013 REST API
Taking Advantage of the SharePoint 2013 REST APITaking Advantage of the SharePoint 2013 REST API
Taking Advantage of the SharePoint 2013 REST APIEric Shupps
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekShailen Sukul
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsShailen Sukul
 
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConBuilding Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConSPTechCon
 

Was ist angesagt? (20)

SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)
 
Developing a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appDeveloping a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint app
 
SharePoint 2013 REST APIs
SharePoint 2013 REST APIsSharePoint 2013 REST APIs
SharePoint 2013 REST APIs
 
App Model For SharePoint 2013
App Model For SharePoint 2013App Model For SharePoint 2013
App Model For SharePoint 2013
 
Designing for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsDesigning for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted Apps
 
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
 
Understanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST APIUnderstanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST API
 
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienDeep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
 
SharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelSharePoint 2010 Client Object Model
SharePoint 2010 Client Object Model
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystified
 
SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013
SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013
SPCA2013 - Developing Provider-Hosted Apps for SharePoint 2013
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Model
 
Introduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST APIIntroduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST API
 
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer PlatformSoCalCodeCamp SharePoint Server 2010 a Developer Platform
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
 
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
 
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
 
Taking Advantage of the SharePoint 2013 REST API
Taking Advantage of the SharePoint 2013 REST APITaking Advantage of the SharePoint 2013 REST API
Taking Advantage of the SharePoint 2013 REST API
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak Peek
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning Models
 
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConBuilding Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
 

Andere mochten auch

Migrating Legacy On-Premise Applications to SharePoint Online and Windows Azure
Migrating Legacy On-Premise Applications to SharePoint Online and Windows AzureMigrating Legacy On-Premise Applications to SharePoint Online and Windows Azure
Migrating Legacy On-Premise Applications to SharePoint Online and Windows AzureEric Shupps
 
Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2
Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2
Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2WinWire Technologies Inc
 
Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...
Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...
Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...Mike Maadarani
 
SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...
SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...
SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...Eric Shupps
 
SPS Chevy Chase Tips on migrating to Office 365
SPS Chevy Chase Tips on migrating to Office 365SPS Chevy Chase Tips on migrating to Office 365
SPS Chevy Chase Tips on migrating to Office 365Mike Maadarani
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsPrashant G Bhoyar (Microsoft MVP)
 
Developing a provider hosted share point app
Developing a provider hosted share point appDeveloping a provider hosted share point app
Developing a provider hosted share point appTalbott Crowell
 
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Bram de Jager
 
Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...
Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...
Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...Eric Shupps
 
Best Practices for a Successful SharePoint Migration or Upgrade to the Cloud
Best Practices for a Successful SharePoint Migration or Upgrade to the CloudBest Practices for a Successful SharePoint Migration or Upgrade to the Cloud
Best Practices for a Successful SharePoint Migration or Upgrade to the CloudPerficient, Inc.
 
Windows Azure Active Directory - from Atidan
Windows Azure Active Directory - from AtidanWindows Azure Active Directory - from Atidan
Windows Azure Active Directory - from AtidanDavid J Rosenthal
 
SharePoint Online and Azure - Better Together
SharePoint Online and Azure - Better TogetherSharePoint Online and Azure - Better Together
SharePoint Online and Azure - Better TogetherNuno Oliveira Costa
 
SharePoint 2013 on-premise vs Office 365 Online compared
SharePoint 2013 on-premise vs Office 365 Online comparedSharePoint 2013 on-premise vs Office 365 Online compared
SharePoint 2013 on-premise vs Office 365 Online comparedNagaraj Yerram
 
Migrating Your Intranet to SharePoint Online
Migrating Your Intranet to SharePoint OnlineMigrating Your Intranet to SharePoint Online
Migrating Your Intranet to SharePoint OnlinePerficient, Inc.
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentJeremy Thake
 
Preparing for BI in the Cloud with Windows Azure
Preparing for BI in the Cloud with Windows AzurePreparing for BI in the Cloud with Windows Azure
Preparing for BI in the Cloud with Windows AzurePerficient, Inc.
 
The SharePoint 2013 App Model
The SharePoint 2013 App ModelThe SharePoint 2013 App Model
The SharePoint 2013 App ModelSPC Adriatics
 
A Developer's Introduction to Azure Active Directory B2C
A Developer's Introduction to Azure Active Directory B2CA Developer's Introduction to Azure Active Directory B2C
A Developer's Introduction to Azure Active Directory B2CJohn Garland
 
Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365nelmedia
 

Andere mochten auch (19)

Migrating Legacy On-Premise Applications to SharePoint Online and Windows Azure
Migrating Legacy On-Premise Applications to SharePoint Online and Windows AzureMigrating Legacy On-Premise Applications to SharePoint Online and Windows Azure
Migrating Legacy On-Premise Applications to SharePoint Online and Windows Azure
 
Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2
Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2
Hybrid SharePoint - Office 365 & On-prem SharePoint 2013 -part2
 
Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...
Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...
Tricks and Tips in Migrating to Office 365 and On-Premises to acoid migration...
 
SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...
SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...
SharePoint 2013 - Migrating Legacy On-Premise Solutions to SharePoint Online ...
 
SPS Chevy Chase Tips on migrating to Office 365
SPS Chevy Chase Tips on migrating to Office 365SPS Chevy Chase Tips on migrating to Office 365
SPS Chevy Chase Tips on migrating to Office 365
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
 
Developing a provider hosted share point app
Developing a provider hosted share point appDeveloping a provider hosted share point app
Developing a provider hosted share point app
 
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
 
Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...
Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...
Webinar - Migrating Legacy On Premise Solutions to SharePoint Online and Wind...
 
Best Practices for a Successful SharePoint Migration or Upgrade to the Cloud
Best Practices for a Successful SharePoint Migration or Upgrade to the CloudBest Practices for a Successful SharePoint Migration or Upgrade to the Cloud
Best Practices for a Successful SharePoint Migration or Upgrade to the Cloud
 
Windows Azure Active Directory - from Atidan
Windows Azure Active Directory - from AtidanWindows Azure Active Directory - from Atidan
Windows Azure Active Directory - from Atidan
 
SharePoint Online and Azure - Better Together
SharePoint Online and Azure - Better TogetherSharePoint Online and Azure - Better Together
SharePoint Online and Azure - Better Together
 
SharePoint 2013 on-premise vs Office 365 Online compared
SharePoint 2013 on-premise vs Office 365 Online comparedSharePoint 2013 on-premise vs Office 365 Online compared
SharePoint 2013 on-premise vs Office 365 Online compared
 
Migrating Your Intranet to SharePoint Online
Migrating Your Intranet to SharePoint OnlineMigrating Your Intranet to SharePoint Online
Migrating Your Intranet to SharePoint Online
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online development
 
Preparing for BI in the Cloud with Windows Azure
Preparing for BI in the Cloud with Windows AzurePreparing for BI in the Cloud with Windows Azure
Preparing for BI in the Cloud with Windows Azure
 
The SharePoint 2013 App Model
The SharePoint 2013 App ModelThe SharePoint 2013 App Model
The SharePoint 2013 App Model
 
A Developer's Introduction to Azure Active Directory B2C
A Developer's Introduction to Azure Active Directory B2CA Developer's Introduction to Azure Active Directory B2C
A Developer's Introduction to Azure Active Directory B2C
 
Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365
 

Ähnlich wie Develop iOS and Android apps with SharePoint/Office 365

OData for iOS developers
OData for iOS developersOData for iOS developers
OData for iOS developersGlen Gordon
 
Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Igor Moochnick
 
Dh2 Apps Training Part2
Dh2   Apps Training Part2Dh2   Apps Training Part2
Dh2 Apps Training Part2jamram82
 
Azure Mobile Services Workshop
Azure Mobile Services WorkshopAzure Mobile Services Workshop
Azure Mobile Services WorkshopEran Stiller
 
Intro to SharePoint for Developers
Intro to SharePoint for DevelopersIntro to SharePoint for Developers
Intro to SharePoint for DevelopersRob Wilson
 
Syllabus for Technical courses
Syllabus for Technical coursesSyllabus for Technical courses
Syllabus for Technical coursesMontek1Learning
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development Chris O'Connor
 
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...BlueMetalInc
 
Getting Started with Office 365 Development
Getting Started with Office 365 DevelopmentGetting Started with Office 365 Development
Getting Started with Office 365 DevelopmentDragan Panjkov
 
SharePoint for the .NET Developer
SharePoint for the .NET DeveloperSharePoint for the .NET Developer
SharePoint for the .NET DeveloperJohn Calvert
 
Windows Azure for .NET Developers
Windows Azure for .NET DevelopersWindows Azure for .NET Developers
Windows Azure for .NET Developersllangit
 
Office appsbiwugpresentation
Office appsbiwugpresentationOffice appsbiwugpresentation
Office appsbiwugpresentationBIWUG
 
Building a chat app with windows azure mobile
Building a chat app with windows azure mobileBuilding a chat app with windows azure mobile
Building a chat app with windows azure mobileFlavius-Radu Demian
 
CTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App FabricCTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App FabricSpiffy
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudMicrosoft ArcReady
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patternsukdpe
 
2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to AppsGilles Pommier
 
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Rodolfo Finochietti
 

Ähnlich wie Develop iOS and Android apps with SharePoint/Office 365 (20)

OData for iOS developers
OData for iOS developersOData for iOS developers
OData for iOS developers
 
Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)
 
Dh2 Apps Training Part2
Dh2   Apps Training Part2Dh2   Apps Training Part2
Dh2 Apps Training Part2
 
Azure Mobile Services Workshop
Azure Mobile Services WorkshopAzure Mobile Services Workshop
Azure Mobile Services Workshop
 
Intro to SharePoint for Developers
Intro to SharePoint for DevelopersIntro to SharePoint for Developers
Intro to SharePoint for Developers
 
Sharepoint2
Sharepoint2Sharepoint2
Sharepoint2
 
Syllabus for Technical courses
Syllabus for Technical coursesSyllabus for Technical courses
Syllabus for Technical courses
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development
 
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
 
Getting Started with Office 365 Development
Getting Started with Office 365 DevelopmentGetting Started with Office 365 Development
Getting Started with Office 365 Development
 
SharePoint for the .NET Developer
SharePoint for the .NET DeveloperSharePoint for the .NET Developer
SharePoint for the .NET Developer
 
Windows Azure for .NET Developers
Windows Azure for .NET DevelopersWindows Azure for .NET Developers
Windows Azure for .NET Developers
 
Migrating Apps To Azure
Migrating Apps To AzureMigrating Apps To Azure
Migrating Apps To Azure
 
Office appsbiwugpresentation
Office appsbiwugpresentationOffice appsbiwugpresentation
Office appsbiwugpresentation
 
Building a chat app with windows azure mobile
Building a chat app with windows azure mobileBuilding a chat app with windows azure mobile
Building a chat app with windows azure mobile
 
CTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App FabricCTU June 2011 - Windows Azure App Fabric
CTU June 2011 - Windows Azure App Fabric
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The Cloud
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
 
2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps
 
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
Que hay de nuevo en Visual Studio 2013 y ASP.NET 5.1
 

Mehr von Kashif Imran

Securing SharePoint Apps with OAuth
Securing SharePoint Apps with OAuthSecuring SharePoint Apps with OAuth
Securing SharePoint Apps with OAuthKashif Imran
 
SharePoint, ADFS and Claims Auth
SharePoint, ADFS and Claims AuthSharePoint, ADFS and Claims Auth
SharePoint, ADFS and Claims AuthKashif Imran
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint StoreKashif Imran
 
SharePoint 2013 Branding
SharePoint 2013 BrandingSharePoint 2013 Branding
SharePoint 2013 BrandingKashif Imran
 
Enterprise Content Management (ECM) in the Cloud
Enterprise Content Management (ECM) in the CloudEnterprise Content Management (ECM) in the Cloud
Enterprise Content Management (ECM) in the CloudKashif Imran
 
Microsoft Azure WebJobs
Microsoft Azure WebJobsMicrosoft Azure WebJobs
Microsoft Azure WebJobsKashif Imran
 
Microsoft Azure - Introduction
Microsoft Azure - IntroductionMicrosoft Azure - Introduction
Microsoft Azure - IntroductionKashif Imran
 

Mehr von Kashif Imran (8)

Securing SharePoint Apps with OAuth
Securing SharePoint Apps with OAuthSecuring SharePoint Apps with OAuth
Securing SharePoint Apps with OAuth
 
SharePoint, ADFS and Claims Auth
SharePoint, ADFS and Claims AuthSharePoint, ADFS and Claims Auth
SharePoint, ADFS and Claims Auth
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint Store
 
SharePoint 2013 Branding
SharePoint 2013 BrandingSharePoint 2013 Branding
SharePoint 2013 Branding
 
Enterprise Content Management (ECM) in the Cloud
Enterprise Content Management (ECM) in the CloudEnterprise Content Management (ECM) in the Cloud
Enterprise Content Management (ECM) in the Cloud
 
Microsoft Azure WebJobs
Microsoft Azure WebJobsMicrosoft Azure WebJobs
Microsoft Azure WebJobs
 
Azure Websites
Azure WebsitesAzure Websites
Azure Websites
 
Microsoft Azure - Introduction
Microsoft Azure - IntroductionMicrosoft Azure - Introduction
Microsoft Azure - Introduction
 

Kürzlich hochgeladen

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Kürzlich hochgeladen (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

Develop iOS and Android apps with SharePoint/Office 365

  • 1. Develop iOS and Windows Store Apps using Office 365/SharePoint 2013 Kashif Imran Kashif_imran@hotmail.com
  • 2. Agenda  What are iOS and Windows Store Apps  Why build iOS/Windows Store Apps  Why use SharePoint/Office 365?  Demo - Service Request Management App for iOS and Windows Store  Development Platform  SharePoint APIs  Which API to Use?  SharePoint CSOM  Demo – Customer Portal Code Review  Office 365 Authentication  REST/OData  Demo – Staff Portal Windows Store App Code Review  Demo – Staff Portal iOS App Code Review  Questions?
  • 3. What are iOS and Windows Store Apps  Immersive  Touch First  Full screen experience without any chrome  Support different layouts and
  • 4. What are iOS and Windows Store Apps (cont.)  Sandboxed  Distributed via App Store/Windows Store  Application Styles  Productivity applications (Contacts, Photos)  Utility applications (Weather, Stocks)  Immersive applications (Living earth, Carpenter)
  • 5. Why build iOS or Windows Store Apps  Web apps vs. Native Apps  Advanced BI Visualization  Offline Scenarios  Device specific features  Examples:  Facebook (HTML5 or Native)  YouTube  …
  • 6. Mobile Development Characteristics  Compact screen  Different device orientations  Limited memory  Usually one app at a time  Minimal help  No Quit button  External events interrupt program flow  Store state when stopping
  • 7. Why use SharePoint/Office 365?  Team productivity  Document management  Tailored solutions  Cot effective file sharing  Privacy  Security  Compliance  Anywhere anytime access to data  Rich set of capabilities  Less training  Deploy your way (cloud, on-prem, hybrid)  Financially backed 99.9% backed SLA  Enterprise grade support
  • 8. Service Request Management App for iOS and Windows Store SharePoint 2013 Office 365 Customer Portal Customers submit service requests from public facing site. Staff Portal Windows Store App Staff Portal iOS App
  • 9. Development Platform  Windows Store Apps  Windows 8  HTML 5 and JavaScript  XAML and C#/VB/C++  DirectX and C++ (Games)  Visual Studio 2012  $49 for Individual, $99 Companies  iOS Apps  Mac - OS X  Objectv-C  Xcode  iOS 5+ support ARC  $99
  • 10. Cross-Platform mobile apps  Xamarin  Miguel de Icaza  Mono: open source ECMA standard compliant .NET Framework compatible set of tolls including Compiler and CLR  MonoTouch:C# and .NET based application that run on iPhone. MonoTouch apps are compiled down to native machine code.  iOS, Android and Mac apps in C#  Xamarin Studio or Visual Studio
  • 11. SharePoint APIs  Server Object Model  Client Object Model  .NET Client OM  Silverlight (and Mobile) Client OM  JavaScript Client OM  REST/OData Endpoints  ASP.NET (asmx) web services  Only supported for backward compatibility  Direct Remote Procedure Calls (RPC) calls to the owssvr.dll  Only supported for backward compatibility
  • 12. Which API to use?  Type of Application  Farm Solutions (w3wp.exe)  With great power comes great responsibility  Sandboxed Solutions (SPUCWorkerProcess.exe)  “SharePoint sandboxed solutions are deprecated in SharePoint 2013 in favor of developing apps for SharePoint, but sandboxed solutions can still be installed to site collections on SharePoint 2013.” MSDN  SharePoint Apps (SharePoint-Hosted, Cloud-Hosted)  Custom Logic in apps is distributed down to the client or up to the cloud  Must use one of the client object models or REST/OData endpoint  External Applications  LAMP web apps, iOS/Android apps  Existing Skills  JavaScript, ASP.NET, REST/OData, Silverlight, PowerShell  Target Device
  • 14. SharePoint CSOM  API to build remote applications  Contains subset of functionality that is available in Server Object Model  Many administrative functions are not available in CSOM  Underlying communications is encapsulated in the runtime  CSOM Implementations  .NET Client OM  Silverlight Client OM  JavaScript Client OM  Type names are similar to Server Object Model but do not have prefix SP as type names in Server OM Server OM Managed/Silverlight Implementation JavaScript Implementation SPContext ClientContext SP.ClientContext SPSite Site SP.Site SPWeb Web SP.Web SPList List SP.List SPListItem ListItem SP.ListItem SPField Field SP.Field
  • 16. CSOM Updates in SharePoint 2013  client.svc has been extended to support direct RESTful calls  OData complaint implementation and support of HTTP GET, PUT, POST, MERGE and DELETE  New APIs for Server functionality  Business Data  Search  Publishing  User Profiles  Taxonomy  Feeds  Sharing  Workflow  E-Discovery  IRM  Analytics
  • 17. CSOM in SharePoint 2010  Direct access to client.svc is not supported  ListData.svc for REST calls and available in SP2013 only for backward compatibility
  • 19. .NET Client OM  Queries are sent to the SharePoint server in batches  Microsoft.SharePoint.Client.dll  Microsoft.SharePoint.Client.Runtime.dll  Root15ISAPI  ClientContext  Load  Populates objects in place  LoadQuery  Returns results for query  ExecuteQuery or ExecuteQueryAsync on ClientContext  Collection and even some non collection properties are not loaded by default
  • 20. .NET Client OM - Load
  • 21. .NET Client OM - LoadQuery
  • 23. Office 365 Authentication Source: Omar Venado’s Blog: http://blogs.msdn.com/b/omarv/archive/2012/10/25/windows-8-store-apps-office-365-enterprise-preview-sharepoint-online.aspx
  • 24. Use Managed CSOM in Windows Store App  Add new project using Windows Runtime Component template in VS2012  Add references to Microsoft.SharePoint.Client and Microsoft.SharePoint.Client.Runtime  Access Managed CSOM from C# or Javascript in Windows Store App
  • 25. REST  REST VS SOAP  Lightweight and easier to implement for various types of potential clients  Various open source JavaScript libraries that support REST based programming  Facebook, LinkedIn, Twitter all has REST APIs  Results are returned as JSON VS ATOM  Results can be cached by proxy servers  SOAP: Same URL, request is in header  REST: Separate URL for different queries or operations
  • 26. OData (Open Data Protocol)  Web protocol for querying and update data  Build upon web technologies, HTTP, AtomPub and JSON  Ignores some of the REST constraints  Data is served up as XML or JSON in Atom Feed  Microsoft, SAP AG, IBM, Citrix, Progress Software and WSO2  OData services: Netflix, Azure  OData clients: Excel 2010/2013
  • 27. OData Terms and Concepts  Built on Entity Data Model  Collections contain Entries like Tables contain Rows  Collections can be associated like Tables can be related  Entry has properties like Table Row has columns  Collections always have keys like Tables may have keys  Browse to service root of OData service usually returns all available Collections EDM OData Entity Set Collection Entity Type Entry Property of an Entity Type Property of Entry Navigation Property Link
  • 28. OData URIs  Service root URI  Resource path  Query string options Source: odata.org
  • 29. Northwind OData Queries  Available Collections  http://services.odata.org/Northwind/Northwind.svc/  Metadata:  http://services.odata.org/Northwind/Northwind.svc/$metadata  Query Entity Set (Collection)  http://services.odata.org/Northwind/Northwind.svc/Customers  Customer With Single Entry  http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')  Get One Property:  http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/Address  Value of a Property:  http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/Address/$v alue  Collection of related Links without actual entries:  http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/$links/Orde rs  Related Entries:  http://services.odata.org/Northwind/Northwind.svc/Customers('LETSS')/Orders(106 43)/Order_Details
  • 30. Query Language  Options: $filter, $sort, $orderby, $top, $expand, $skip, $take, $metadata…  Operations: eq, ne, gt, ge, lt, le, and, or, not, mod, add, sub  Functions: startswith, substring, replace, tolower, trim, round, ceiling, day, month, year, typeof,…  Top 3 Customer from USA Order By ContactName  http://services.odata.org/Northwind/Northwind.svc/Customers? $filter=Country eq 'USA'&$orderby=ContactName&$top=3  Return related Entries Inline  http://services.odata.org/Northwind/Northwind.svc/Customers(' LETSS')/$links/Orders  Get Data in JSON Format  http://services.odata.org/Northwind/Northwind.svc/Customers(' LETSS')?$expand=Orders&$format=JSON
  • 31. CRUD Operation and HTTP Verbs  Standardize CRUD operations using HTTP verbs such as GET, PUT, POST and MERGE  Methods are mapped into Navigator operations via GET (list.getByTitle) CRUD Operation HTTP Verb Read GET Create POST Update PUT or MERGE Delete DELETE
  • 32. SharePoint REST URLs  _api => _vti_bin/client.svc  _api/web/lists  _api/web/lists/lists(guid)  _api/web/lists/getByTitle(‘Announcements’)  _api/web/lists/getbytitle(‘Announcements’)/items(2)/F ieldValuesAsHtml/$select=Title,Author  _api/web/getAvailableWebTemplates(lcid=1033)  _api/web/?$select=title,id  _api/web/lists/getByTitle(‘mylist’)?$select=title,firstna me  _api/web/lists/getByTitle(‘customers’)?$select=title,fir stname&startswith(Title, ‘p’)
  • 33. Demo - OData Queries in Browser Demo
  • 34. OData: ATOMPub Format  ATOMPub: The Atom Publishing Protocol  Application level protocol for publishing and editing web resources.  Based on HTTP transfer of Atom-formatted representations.  ACCEPT = application/atom+xml  XML Parsing on client side (Easy in Managed Code)  XML is default for SharePoint REST calls
  • 36. JSON  Lightweight data-interchange format  Easy for humans to read and write  Easy for machines to parse and generate  ACCEPT = application/json;odata=verbose  Client libraries like datajs  Hierarchically in arrays and /or in key-value storage  Characters [] enclose arrays  {} key value pairs  “” enclose text values
  • 37. Helpful Classes in iOS for REST Calls  NSURLConnection (synchronous, Asynchronous, delegate methods)  NSURLRequest  NSURLResponse  NSError  NSData  NSJSONSerialization  NSDictionary  NSArray  JSON Item Converstion:  Array of Items => NSArray  Key-Value storage => NSDictionary  String => NSString  Numbers => NSNumber  Null values => NSNull  NSXMLParser
  • 38. Helpful Classes for Windows Store App REST Calls  HttpClient  CookieContainer  JsonObject  JsonArray  Dictionary<string, IJsonValue>
  • 39. Updates and the Form Digest  Form Digest can be acquired through  http://site/_api/contextinfo  http://site/_vti_bin/sites.asmx  Special value created to protect again replay attack  SharePoint adds this control through master page  Web service clients need to acquire Form Digest manually
  • 40. Demo – Windows Store App
  • 42. References  Choose the right API set in SharePoint 2013  How to: Complete basic operations using SharePoint 2013 client library code  How to: Complete basic operations using JavaScript library code in SharePoint 2013  How to: Access SharePoint 2013 data from remote apps using the cross-domain library  Programming using the SharePoint 2013 REST service  How to: Complete basic operations using SharePoint 2013 REST endpoints  Host webs, app webs, and SharePoint components in SharePoint 2013  Build mobile apps in SharePoint 2013  http://www.odata.org/