Introduction to the Salesforce.com
Mobile SDK for iOS
The subtitle goes here
Joshua Birk, salesforce.com, Developer Evangelist
@joshbirk
Safe harbor
 Safe harbor statement under the Private Securities Litigation Reform Act of 1995:

 This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
 materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results
 expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be
 deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other
 financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any
 statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.

 The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new
 functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our
 operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of
 intellectual property and other litigation, risks associated with possible mergers and acquisitions, the immature market in which we
 operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new
 releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization
 and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of
 salesforce.com, inc. is included in our annual report on Form 10-Q for the most recent fiscal quarter ended July 31, 2012. This
 documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of
 our Web site.

 Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently
 available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based
 upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-
 looking statements.
Device Growth Is Exploding, Driven By Consumers




 Source: Gartner Research; Smartphone, Tablet, and PC Forecast, December 2010.
Info Workers Use Many Devices For Work & Personal




                        52% of information workers use 3 or more devices
          60% of these devices are used for both work and personal use
 Source: Forrester Blogs: Why Tablets Will Become Our Primary Computing Device, Frank Gillett, April 23, 2012
Mobile SDK: Accelerate App Development
Tools for building native, hybrid, and HTML5 apps on iOS and Android

          OAuth2
          Secure authentication and refresh token
          management

         API Wrappers
         Interact with Salesforce REST APIs with
         popular mobile platform languages

         App Container
         Embed HTML5 apps inside a container to
         access powerful native device functionality

          Secure Offline Storage
          Store business data on a device with
          enterprise-class encryption


          Push Notifications
          Dispatch real-time alerts directly to mobile
          devices
OAuth
An industry standard method of validating user credentials
while avoiding password anti-patterns.
OAuth2 Flow
                  Sends App Credentials


                            User logs in
                        Token sent to Callback

     Remote                                      Force.com
    Application   Confirms token                  Platform


                             Send access token



                      Maintain session with
                         refresh token
Representational State Transfer (REST)
A stateless data transport based on standard HTTP
methods for delivering as JSON or XML
Required Tools
Xcode 4.2+
git
Installation
$ git clone
https://github.com/forcedotcom/SalesforceMobileSDK
-iOS.git
$ cd SalesforceMobileSDK-iOS
$ ./install.sh
5 Minute Application
In just five minutes
We have authenticated our user, queried the platform
and provided a detail page of results
Oauth
[[SFRESTAPI sharedInstance] send:request delegate:self];

- (void) login {
   [self.coordinator authenticate];
}

-(void) logout {
    [self.coordinator revokeAuthentication];
    [self.coordinator authenticate];
}
REST API
requestForQuery

requestForSearch

requestForCreateWithObjectType

requestForDeleteWithObjectType

requestForUpsertWithObjectType

requestForUpdateWithObjectType

requestForDescribeWithObjectType
Let’s break something
and provide users with feedback when the API reports
something went wrong.
Adding Functionality
Update the stock inventory
SmartStore
An offline, schema-less, encrypted data store
Adding Functionality
Using SmartStore for secure offline data
Adding Functionality
Accessing the Camera and uploading an attachment
Force.com Mobile SDK
a framework for quickly developing secure, fast and
reliable iOS applications
@joshbirk

Introduction to the Salesforce.com Mobile SDK for iOS

  • 1.
    Introduction to theSalesforce.com Mobile SDK for iOS The subtitle goes here Joshua Birk, salesforce.com, Developer Evangelist @joshbirk
  • 2.
    Safe harbor Safeharbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of intellectual property and other litigation, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-Q for the most recent fiscal quarter ended July 31, 2012. This documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward- looking statements.
  • 3.
    Device Growth IsExploding, Driven By Consumers Source: Gartner Research; Smartphone, Tablet, and PC Forecast, December 2010.
  • 4.
    Info Workers UseMany Devices For Work & Personal 52% of information workers use 3 or more devices 60% of these devices are used for both work and personal use Source: Forrester Blogs: Why Tablets Will Become Our Primary Computing Device, Frank Gillett, April 23, 2012
  • 5.
    Mobile SDK: AccelerateApp Development Tools for building native, hybrid, and HTML5 apps on iOS and Android OAuth2 Secure authentication and refresh token management API Wrappers Interact with Salesforce REST APIs with popular mobile platform languages App Container Embed HTML5 apps inside a container to access powerful native device functionality Secure Offline Storage Store business data on a device with enterprise-class encryption Push Notifications Dispatch real-time alerts directly to mobile devices
  • 7.
    OAuth An industry standardmethod of validating user credentials while avoiding password anti-patterns.
  • 8.
    OAuth2 Flow Sends App Credentials User logs in Token sent to Callback Remote Force.com Application Confirms token Platform Send access token Maintain session with refresh token
  • 9.
    Representational State Transfer(REST) A stateless data transport based on standard HTTP methods for delivering as JSON or XML
  • 10.
  • 11.
  • 12.
  • 13.
    In just fiveminutes We have authenticated our user, queried the platform and provided a detail page of results
  • 14.
    Oauth [[SFRESTAPI sharedInstance] send:requestdelegate:self]; - (void) login { [self.coordinator authenticate]; } -(void) logout { [self.coordinator revokeAuthentication]; [self.coordinator authenticate]; }
  • 15.
  • 16.
    Let’s break something andprovide users with feedback when the API reports something went wrong.
  • 17.
  • 18.
  • 19.
  • 20.
    Adding Functionality Accessing theCamera and uploading an attachment
  • 21.
    Force.com Mobile SDK aframework for quickly developing secure, fast and reliable iOS applications
  • 22.