SlideShare a Scribd company logo
Using Visualforce in Salesforce1
Speakers
Sandeep Bhanot
Mobile Geek (both kinds)
@cloudysan
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.
Introducing Salesforce1
All your past investments...
Drag and drop UI
customization
Notifications
Platform
Publisher
Actions
...now in the future
Download Salesforce1 App today
All Your
Customizations
All Your Devices
All Your CRM
All Your Apps
https://yourinstance.salesforce.com/one/one.app
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
§  How can I make it better?
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
§  How can I make it better?
Visualforce – Left Nav
Visualforce Pages in Left Nav
JavaScript navigation library available
sforce.one.navigateToSObject etc.
Visualforce – Publisher Actions
Visualforce Pages as Publisher Actions
(VF page needs to the extend Standard Controller for
use with Object Specific Publisher Actions)
JavaScript Pub-Sub library available to interact with the
publisher
publisher.setValidForSubmit
publisher.post
publisher.close
Visualforce – Page Layout
Visualforce Pages in Page Layouts
(VF page needs to the extend Standard Controller)
Visualforce – Mobile Cards
Mobile Cards - Visualforce Pages on
Record Detail
(VF page needs to the extend Standard Controller)
Visualforce in Salesforce1
§  <apex:page docType="html-5.0" …>
§  ‘Available for Salesforce Mobile apps’ flag enabled
§  VF page needs to the extend Standard Controller in order to use in the
Page Layout, Mobile Cards or Publisher Actions
Things to remember…
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
Visualforce in Salesforce1 – UI/UX considerations
Salesforce1 cannot auto-magically
(yes, it’s a word) make Visualforce
pages mobile-optimized
Visualforce UI/UX considerations
§  Design VF pages taking the limited real-estate in mobile into account
§  Decide which form-factors your page has to support - phone, tablet, both
§  Develop for the mobile context
–  Use device features like geolocation, camera etc. where appropriate
–  Mobile version of the page/app does not have to support all the bells and whistles –
less is more
–  Optimize for your most common mobile use case – discovery, data entry, search etc.
§  <apex:page standardStylesheets="false">
§  Use Responsive Design principles (same as the Salesforce1 app)
Making Visualforce Pages Mobile Optimized
Mobile Design Templates
www.developerforce.com/mobile/services/mobile-templates
Making Visualforce Pages Mobile Optimized
Twitter Bootstrap
http://www.youtube.com/watch?v=W1TbyDH0RaY
Using Visualforce and Bootstrap -
http://bit.ly/VisualStrap
Custom Bootstrap fork that works with default
Visualforce styling (Community developed)
Making Visualforce Pages Mobile Optimized
Ionic Framework
http://coenraets.org/blog/2014/02/sample-force-com-mobile-
application-with-ionic-and-angularjs/
Making Visualforce Pages Mobile Optimized
Ratchet
http://coenraets.org/blog/2014/03/building-mobile-apps-for-
salesforce-com-with-ratchet-2-0/
Making Visualforce Pages Mobile Optimized
jQuery Mobile
http://www.developerforce.com/mobile/getting-started/
html5/#jquery
Using Standard Visualforce Tags in Salesforce1
<apex:repeat> <apex:outputPanel>
Note: Representative sample only. This is not a
comprehensive list
<apex:pageBlock> <apex:pageBlockButtons>
<apex:pageBlockSection> <apex:pageBlockSectionItem>
<apex:pageBlockTable> <apex:inlineEditSupport>
<apex:detail> <apex:inputField>**
<apex:enhancedList> <apex:listViews> <apex:relatedList>
<chatter:*> <liveagent:*>
Works and
Supported
Supported,
but avoid if
possible
Not
Supported
Using Standard Visualforce Tags in Salesforce1
§  Try and avoid using standard Visualforce tags (which are optimized for
desktop) if possible.
§  Use standard HTML markup (<div>, <section>, <p>, <a>, <li> etc.) +
custom mobile-optimized CSS (e.g. Bootstrap) instead
§  If you have to use structure tags like <apex:pageBlockSection>, use 1
column layout.
Salesforce1 Style Guide
http://sfdc-styleguide.herokuapp.com/
Keeping Visualforce pages consistent with the Salesforce1 look and feel
Salesforce1 Style Guide
https://github.com/joshbirk/onestarter
OneStarter - An open-source jQuery plugin for easily making Visualforce
pages appear in the style of Salesforce1.
Visualforce in Salesforce1 - UI/UX summary
Dos Don’ts
Responsive design Desktop optimized design
Standard HTML markup and custom
CSS
Standard VF structure tags and CSS
Less is more Support every bell and whistle
Use Mobile Context (e.g. camera,
geolocation)
Recreate desktop functionality
Optimized for touch (e.g. larger tap
areas, HTML5 form inputs)
Optimized for click
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
§  Avoid ViewState (no <apex:form>)
§  Favor Single Page apps (full page rendering is expensive on mobile)
§  Consider JavaScript MV* Frameworks like AngularJS, Backbone etc. to
provide structure
Business Logic & Data Binding in Visualforce
Top 3 things to remember….
Business Logic & Data Binding in Visualforce
§  Invoke Apex Controller/Extension
methods from JavaScript
§  Avoids ViewState (better performance)
§  Stateless business logic
§  Front-end heavy (i.e. JavaScript)
development
JavaScript Remoting
Business Logic & Data Binding in Visualforce
§  Basic CRUD operations on SObjects
directly from JavaScript
§  Avoids ViewState (better performance)
§  Reduces server-side Apex code
§  Front-end heavy (i.e. JavaScript)
development
§  Replaces ForceTk/RemoteTk (in the VF
context)
Visualforce Remote Objects (new Pilot in Spring ’14)
Business Logic & Data Binding in Visualforce
§  Use <apex:repeat> to display
lists
<apex:repeat> is your friend
Business Logic & Data Binding in Visualforce
Mobile Packs
http://www.developerforce.com/mobile/services/mobile-packs
§  Use popular open-source
JavaScript MV* Frameworks in
Visualforce
§  Great way to build single-page
mobile web apps
§  Mobile Packs handle data
binding with Salesforce
Visualforce in Salesforce1 – Data Binding summary
Dos Don’ts
JavaScript Remoting <apex:form>
Visualforce Remote Objects <apex:form>
HTML5 Input Elements (tel, email, date
etc.)
<apex:inputField>
<apex:input type=“tel/email/…”/> <apex:inputField>
Single Page apps Multi-page apps
JavaScript MV* Frameworks like
AngularJS, Backbone etc.
No JavaScript Framework
Stateless & Asynchronous Server-side state & synchronous
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
Visualforce in Salesforce1 - Navigation
Salesforce1 provides a JavaScript navigation library via the sforce.one
object
sforce.one.navigateToSObject
sforce.one.navigateToURL
sforce.one.navigateToFeed
sforce.one.navigateToFeedItemDetail
sforce.one.navigateToRelatedList
sforce.one.navigateToList
sforce.one.editRecord
sforce.one.createRecord
Visualforce in Salesforce1 - Navigation
§  Avoid using window.open
§  Manipulating window.location.href directly will NOT work
§  Don’t use target="_blank” in navigation links
§  External links (e.g. <a href=“www.test.com”>) will open in a new child browser
§  Internal links will open in current window
Things to remember….
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
Supporting multiple form factors in Visualforce
But my Visualforce page has to work in Salesforce1
(phone & tablet) AND Desktop…
Supporting multiple form factors in Visualforce
Option 1 (existing pages) : Refactor to make mobile-friendly
§  Minimize/eliminate use of VF tags like <apex:pageBlock>, <apex:detail>
etc. that are not mobile-optimized and/or supported in Salesforce1
§  Replace <apex:form> with JavaScript Remoting or Remote Objects where
possible
Supporting multiple form factors in Visualforce
Option 2 : Responsive Design
Recommended approach
Supporting multiple form factors in Visualforce
Option 3 : Serve different content based on form-factor
http://blogs.developerforce.com/developer-relations/2012/05/cross-device-html5-apps-using-visualforce.html
Libraries like Device.js or Modernizr
can be used to detect form-factor
–  Redirect to different VF pages based
on form factor, OR
–  Conditionally show sections of the
page based on form factor
Supporting multiple form factors in Visualforce
Remember to handle navigation differently in
Salesforce1 vs Desktop
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
Device Access in Salesforce1
PhoneGap/Cordova type device access is not available in the Salesforce1 app.
HOWEVER….
–  Geolocation API (check the Saleforce1 Dev
Guide for an example)
–  <input type="file" accept="image/*"/>
(for Camera access)
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
–  Performance
–  Debugging
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
–  Performance
–  Debugging
Visualforce Performance in Salesforce1
The 3 most important things about developing mobile web pages
Performance, Performance, Performance.
Visualforce Performance in Salesforce1
Some Performance tips for designing mobile VF pages
§  Avoid viewstate (no <apex:form>)
§  <apex:page cache="true" expires="600">
§  Minimize all your CSS and JavaScript (using tools like YUI Compressor) and compress images
§  Use optimization techniques like image lazy loading and infinite scroll
§  Insert/update the DOM in bulk to avoid browser reflows (e.g. insert an entire <ul> section
instead of individual <li> elements)
General
§  Use libraries like FastClick to avoid the default 300ms tap delay in mobile web browsers
§  Use lightweight JavaScript libraries like Zepto.js instead of Jquery
§  Move your <script> statements to the end of the Visualforce page
JavaScript
Visualforce Performance in Salesforce1
Some Performance tips for designing mobile VF pages
§  Use CSS Sprites to minimize HTTP connections
§  Avoid CSS techniques like drop shadows, gradients etc. that affect page performance. Flat
design is new black.
§  Use Hardware Accelerated CSS properties where appropriate
§  Use PNG/JPG images (no GIFs). Avoid images completely (use CSS3 instead) where possible.
§  Build single page apps with CSS transitions between screens/sections
§  Conditionally load static assets (CSS, images etc.) based on form factor
CSS/Images
Visualforce Performance in Salesforce1
Some Tools to help you measure page performance
§  WebPageTest
§  PageSpeed Insights
§  Chrome Developer Tools - Timeline
Visualforce in Salesforce1
§  Where can I use it?
§  How do I use it?
–  UI/UX
–  Business Logic & Data Binding
–  Navigation
–  Supporting multiple form factors
–  Device Access
§  How can I make it better?
–  Performance
–  Debugging
Salesforce1 comes in two flavors
http://yourinstance.salesforce.com/one/one.app
Web version Hybrid version
Debugging Visualforce in Salesforce1
Debug your Visualforce page in the web version of Salesforce1 first
http://yourinstance.salesforce.com/one/one.app
Debugging Visualforce in Salesforce1
Use standard web debugging
tools like Chrome Dev. Tools and
Firebug
Debugging Visualforce pages running on a device
(i.e. inside the Hybrid Salesforce1 app)
http://people.apache.org/~pmuellr/weinre/docs/latest/
Debugging Visualforce in Salesforce1
Weinre – open source tool to debug web pages running on a device
Salesforce1 Developer Resources
§  Webinar: Intro to Salesforce1 Mobile App Development
§  Dreamforce Sessions – bit.ly/s1-df-sessions
§  Developer Guide – bit.ly/s1-dev-guide
§  Blogs:
–  6 things you need to know: bit.ly/s1-6-things
–  Mobile cards: bit.ly/s1-mobile-cards
Follow Developer Force for the Latest News
@forcedotcom / #forcewebinar
Developer Force – Force.com Community
+Developer Force – Force.com Community
Developer Force
Developer Force Group

More Related Content

What's hot

Admin Webinar—An Admin's Guide to Profiles & Permissions
Admin Webinar—An Admin's Guide to Profiles & PermissionsAdmin Webinar—An Admin's Guide to Profiles & Permissions
Admin Webinar—An Admin's Guide to Profiles & Permissions
Salesforce Admins
 
Salesforce CPQ updated 1.pptx
Salesforce CPQ updated 1.pptxSalesforce CPQ updated 1.pptx
Salesforce CPQ updated 1.pptx
ssuser1eba67
 
Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...
Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...
Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...
Salesforce Developers
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
Salesforce Developers
 
Salesforce Integration Patterns
Salesforce Integration PatternsSalesforce Integration Patterns
Salesforce Integration Patterns
usolutions
 
Salesforce CPQ by yuvaraj
Salesforce CPQ by yuvarajSalesforce CPQ by yuvaraj
Salesforce CPQ by yuvaraj
Yuvaraj P
 
MWD - Einstein Next Best Action.pptx
MWD - Einstein Next Best Action.pptxMWD - Einstein Next Best Action.pptx
MWD - Einstein Next Best Action.pptx
dheeraj438799
 
Tour of Heroku + Salesforce Integration Methods
Tour of Heroku + Salesforce Integration MethodsTour of Heroku + Salesforce Integration Methods
Tour of Heroku + Salesforce Integration Methods
Salesforce Developers
 
Salesforce Service Cloud - An overview
Salesforce Service Cloud - An overviewSalesforce Service Cloud - An overview
Salesforce Service Cloud - An overview
Ajay Balakrishnan
 
Salesforce CPQ, Orders, Contracts, Amendments and Renewals
Salesforce CPQ, Orders, Contracts, Amendments and RenewalsSalesforce CPQ, Orders, Contracts, Amendments and Renewals
Salesforce CPQ, Orders, Contracts, Amendments and Renewals
Vinay Sail
 
The Role of the Salesforce Administrator
The Role of the Salesforce Administrator The Role of the Salesforce Administrator
The Role of the Salesforce Administrator
Ebsta Limited
 
Salesforce CPQ
Salesforce CPQSalesforce CPQ
Salesforce CPQ
Jade Global
 
Salesforce ppt
Salesforce pptSalesforce ppt
Salesforce ppt
Nimish Chaini
 
Salesforce Service Cloud automatons
Salesforce Service Cloud automatonsSalesforce Service Cloud automatons
Salesforce Service Cloud automatons
RAMNARAYAN R
 
Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...
Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...
Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...
Salesforce Developers
 
Introduction to the Salesforce Security Model
Introduction to the Salesforce Security ModelIntroduction to the Salesforce Security Model
Introduction to the Salesforce Security Model
Salesforce Developers
 
Introduction to Force.com Canvas Apps
Introduction to Force.com Canvas AppsIntroduction to Force.com Canvas Apps
Introduction to Force.com Canvas Apps
Salesforce Developers
 
Ivan Gubynskyy Salesforce CRM and Platform Overview
Ivan Gubynskyy Salesforce CRM and Platform OverviewIvan Gubynskyy Salesforce CRM and Platform Overview
Ivan Gubynskyy Salesforce CRM and Platform Overview
LogeekNightUkraine
 
Secure Salesforce: External App Integrations
Secure Salesforce: External App IntegrationsSecure Salesforce: External App Integrations
Secure Salesforce: External App Integrations
Salesforce Developers
 
Salesforce Deck Template
Salesforce Deck TemplateSalesforce Deck Template
Salesforce Deck Template
Phil Weinmeister
 

What's hot (20)

Admin Webinar—An Admin's Guide to Profiles & Permissions
Admin Webinar—An Admin's Guide to Profiles & PermissionsAdmin Webinar—An Admin's Guide to Profiles & Permissions
Admin Webinar—An Admin's Guide to Profiles & Permissions
 
Salesforce CPQ updated 1.pptx
Salesforce CPQ updated 1.pptxSalesforce CPQ updated 1.pptx
Salesforce CPQ updated 1.pptx
 
Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...
Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...
Intro to Force.com Canvas: Running External Apps within the Salesforce UI Web...
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
 
Salesforce Integration Patterns
Salesforce Integration PatternsSalesforce Integration Patterns
Salesforce Integration Patterns
 
Salesforce CPQ by yuvaraj
Salesforce CPQ by yuvarajSalesforce CPQ by yuvaraj
Salesforce CPQ by yuvaraj
 
MWD - Einstein Next Best Action.pptx
MWD - Einstein Next Best Action.pptxMWD - Einstein Next Best Action.pptx
MWD - Einstein Next Best Action.pptx
 
Tour of Heroku + Salesforce Integration Methods
Tour of Heroku + Salesforce Integration MethodsTour of Heroku + Salesforce Integration Methods
Tour of Heroku + Salesforce Integration Methods
 
Salesforce Service Cloud - An overview
Salesforce Service Cloud - An overviewSalesforce Service Cloud - An overview
Salesforce Service Cloud - An overview
 
Salesforce CPQ, Orders, Contracts, Amendments and Renewals
Salesforce CPQ, Orders, Contracts, Amendments and RenewalsSalesforce CPQ, Orders, Contracts, Amendments and Renewals
Salesforce CPQ, Orders, Contracts, Amendments and Renewals
 
The Role of the Salesforce Administrator
The Role of the Salesforce Administrator The Role of the Salesforce Administrator
The Role of the Salesforce Administrator
 
Salesforce CPQ
Salesforce CPQSalesforce CPQ
Salesforce CPQ
 
Salesforce ppt
Salesforce pptSalesforce ppt
Salesforce ppt
 
Salesforce Service Cloud automatons
Salesforce Service Cloud automatonsSalesforce Service Cloud automatons
Salesforce Service Cloud automatons
 
Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...
Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...
Visualforce & Force.com Canvas: Unlock your Web App inside of Salesforce.com ...
 
Introduction to the Salesforce Security Model
Introduction to the Salesforce Security ModelIntroduction to the Salesforce Security Model
Introduction to the Salesforce Security Model
 
Introduction to Force.com Canvas Apps
Introduction to Force.com Canvas AppsIntroduction to Force.com Canvas Apps
Introduction to Force.com Canvas Apps
 
Ivan Gubynskyy Salesforce CRM and Platform Overview
Ivan Gubynskyy Salesforce CRM and Platform OverviewIvan Gubynskyy Salesforce CRM and Platform Overview
Ivan Gubynskyy Salesforce CRM and Platform Overview
 
Secure Salesforce: External App Integrations
Secure Salesforce: External App IntegrationsSecure Salesforce: External App Integrations
Secure Salesforce: External App Integrations
 
Salesforce Deck Template
Salesforce Deck TemplateSalesforce Deck Template
Salesforce Deck Template
 

Viewers also liked

Salesforce1 for Visualforce Developers
Salesforce1 for Visualforce DevelopersSalesforce1 for Visualforce Developers
Salesforce1 for Visualforce Developers
Keir Bowden
 
Lightning Experience with Visualforce Best Practices
Lightning Experience with Visualforce Best PracticesLightning Experience with Visualforce Best Practices
Lightning Experience with Visualforce Best Practices
Salesforce Developers
 
Responsive Web Design with Visualforce
Responsive Web Design with VisualforceResponsive Web Design with Visualforce
Responsive Web Design with Visualforce
Keir Bowden
 
Lightning Force Eventの紹介
Lightning Force Eventの紹介Lightning Force Eventの紹介
Lightning Force Eventの紹介
Taiki Yoshikawa
 
Lightning を利用した開発とケーススタディ
Lightning を利用した開発とケーススタディLightning を利用した開発とケーススタディ
Lightning を利用した開発とケーススタディ
Salesforce Developers Japan
 
Building Visualforce Custom Events Handlers
Building Visualforce Custom Events HandlersBuilding Visualforce Custom Events Handlers
Building Visualforce Custom Events Handlers
Salesforce Developers
 
S1 and Visualforce Publisher Actions
S1 and Visualforce Publisher ActionsS1 and Visualforce Publisher Actions
S1 and Visualforce Publisher Actions
Peter Chittum
 
SF1 - Apex Development Best Practises
SF1 - Apex Development Best PractisesSF1 - Apex Development Best Practises
SF1 - Apex Development Best Practises
Sebastian Wagner
 
Seamless Authentication with Force.com Canvas
Seamless Authentication with Force.com CanvasSeamless Authentication with Force.com Canvas
Seamless Authentication with Force.com Canvas
Salesforce Developers
 
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps WebinarIntro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Salesforce Developers
 
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Salesforce Developers
 
Lightning コンポーネント Deep Dive
Lightning コンポーネント Deep DiveLightning コンポーネント Deep Dive
Lightning コンポーネント Deep Dive
Salesforce Developers Japan
 
Scala - from "Hello, World" to "Heroku Scale"
Scala - from "Hello, World" to "Heroku Scale"Scala - from "Hello, World" to "Heroku Scale"
Scala - from "Hello, World" to "Heroku Scale"
Salesforce Developers
 
Spice up Your Internal Portal with Visualforce and Twitter Bootstrap
Spice up Your Internal Portal with Visualforce and Twitter BootstrapSpice up Your Internal Portal with Visualforce and Twitter Bootstrap
Spice up Your Internal Portal with Visualforce and Twitter Bootstrap
Salesforce Developers
 
Agile Development with Heroku webinar
Agile Development with Heroku webinarAgile Development with Heroku webinar
Agile Development with Heroku webinar
Salesforce Developers
 
Preparing for Lightning: Replacing URL Hacks with Actions
Preparing for Lightning: Replacing URL Hacks with ActionsPreparing for Lightning: Replacing URL Hacks with Actions
Preparing for Lightning: Replacing URL Hacks with Actions
Mike White
 
Lightningのコンポーネントフレームワークの概要
Lightningのコンポーネントフレームワークの概要Lightningのコンポーネントフレームワークの概要
Lightningのコンポーネントフレームワークの概要
Salesforce Developers Japan
 
Team Development on Force.com with Github and Ant
Team Development on Force.com with Github and AntTeam Development on Force.com with Github and Ant
Team Development on Force.com with Github and Ant
Salesforce Developers
 
Salesforce1 app getting started guide
Salesforce1 app getting started guideSalesforce1 app getting started guide
Salesforce1 app getting started guide
1stevemarcy
 

Viewers also liked (20)

Salesforce1 for Visualforce Developers
Salesforce1 for Visualforce DevelopersSalesforce1 for Visualforce Developers
Salesforce1 for Visualforce Developers
 
Jp visualforce in salesforce1
Jp visualforce in salesforce1Jp visualforce in salesforce1
Jp visualforce in salesforce1
 
Lightning Experience with Visualforce Best Practices
Lightning Experience with Visualforce Best PracticesLightning Experience with Visualforce Best Practices
Lightning Experience with Visualforce Best Practices
 
Responsive Web Design with Visualforce
Responsive Web Design with VisualforceResponsive Web Design with Visualforce
Responsive Web Design with Visualforce
 
Lightning Force Eventの紹介
Lightning Force Eventの紹介Lightning Force Eventの紹介
Lightning Force Eventの紹介
 
Lightning を利用した開発とケーススタディ
Lightning を利用した開発とケーススタディLightning を利用した開発とケーススタディ
Lightning を利用した開発とケーススタディ
 
Building Visualforce Custom Events Handlers
Building Visualforce Custom Events HandlersBuilding Visualforce Custom Events Handlers
Building Visualforce Custom Events Handlers
 
S1 and Visualforce Publisher Actions
S1 and Visualforce Publisher ActionsS1 and Visualforce Publisher Actions
S1 and Visualforce Publisher Actions
 
SF1 - Apex Development Best Practises
SF1 - Apex Development Best PractisesSF1 - Apex Development Best Practises
SF1 - Apex Development Best Practises
 
Seamless Authentication with Force.com Canvas
Seamless Authentication with Force.com CanvasSeamless Authentication with Force.com Canvas
Seamless Authentication with Force.com Canvas
 
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps WebinarIntro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
 
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
 
Lightning コンポーネント Deep Dive
Lightning コンポーネント Deep DiveLightning コンポーネント Deep Dive
Lightning コンポーネント Deep Dive
 
Scala - from "Hello, World" to "Heroku Scale"
Scala - from "Hello, World" to "Heroku Scale"Scala - from "Hello, World" to "Heroku Scale"
Scala - from "Hello, World" to "Heroku Scale"
 
Spice up Your Internal Portal with Visualforce and Twitter Bootstrap
Spice up Your Internal Portal with Visualforce and Twitter BootstrapSpice up Your Internal Portal with Visualforce and Twitter Bootstrap
Spice up Your Internal Portal with Visualforce and Twitter Bootstrap
 
Agile Development with Heroku webinar
Agile Development with Heroku webinarAgile Development with Heroku webinar
Agile Development with Heroku webinar
 
Preparing for Lightning: Replacing URL Hacks with Actions
Preparing for Lightning: Replacing URL Hacks with ActionsPreparing for Lightning: Replacing URL Hacks with Actions
Preparing for Lightning: Replacing URL Hacks with Actions
 
Lightningのコンポーネントフレームワークの概要
Lightningのコンポーネントフレームワークの概要Lightningのコンポーネントフレームワークの概要
Lightningのコンポーネントフレームワークの概要
 
Team Development on Force.com with Github and Ant
Team Development on Force.com with Github and AntTeam Development on Force.com with Github and Ant
Team Development on Force.com with Github and Ant
 
Salesforce1 app getting started guide
Salesforce1 app getting started guideSalesforce1 app getting started guide
Salesforce1 app getting started guide
 

Similar to Using Visualforce in Salesforce1

Building JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 PlatformBuilding JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 Platform
Salesforce Developers
 
Singapore dev user group
Singapore   dev user groupSingapore   dev user group
Singapore dev user group
Troy Sellers
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDK
Salesforce Developers
 
Salesforce1 for Developers
Salesforce1 for DevelopersSalesforce1 for Developers
Salesforce1 for Developers
Salesforce Developers
 
Salesforce1 for Developers
Salesforce1 for DevelopersSalesforce1 for Developers
Salesforce1 for Developers
Salesforce Partners
 
Force.com Friday - Intro to Visualforce
Force.com Friday - Intro to VisualforceForce.com Friday - Intro to Visualforce
Force.com Friday - Intro to Visualforce
Shivanath Devinarayanan
 
Force.com Friday: Intro to Visualforce (May 8, 2015)
Force.com Friday: Intro to Visualforce (May 8, 2015)Force.com Friday: Intro to Visualforce (May 8, 2015)
Force.com Friday: Intro to Visualforce (May 8, 2015)
Salesforce Developers
 
Entwicklung angepasster User Interfaces für Salesforce1
Entwicklung angepasster User Interfaces für Salesforce1Entwicklung angepasster User Interfaces für Salesforce1
Entwicklung angepasster User Interfaces für Salesforce1
Salesforce Deutschland
 
Salesforce1 for developers
Salesforce1 for developersSalesforce1 for developers
Salesforce1 for developers
David Scruggs
 
Salesforce1 for ISVs Webinar (July 17, 2014)
Salesforce1 for ISVs Webinar (July 17, 2014)Salesforce1 for ISVs Webinar (July 17, 2014)
Salesforce1 for ISVs Webinar (July 17, 2014)
Salesforce Partners
 
Lightning Workshop London
Lightning Workshop LondonLightning Workshop London
Lightning Workshop London
Keir Bowden
 
AngularJS App In Two Weeks
AngularJS App In Two WeeksAngularJS App In Two Weeks
AngularJS App In Two Weeks
Peter Chittum
 
Salesforce1 for ISVs Webinar (May 15, 2014)
Salesforce1 for ISVs Webinar (May 15, 2014)Salesforce1 for ISVs Webinar (May 15, 2014)
Salesforce1 for ISVs Webinar (May 15, 2014)
Salesforce Partners
 
ISV Lightning Webinar Series - Part 1 (December 1, 2015)
ISV Lightning Webinar Series - Part 1 (December 1, 2015)ISV Lightning Webinar Series - Part 1 (December 1, 2015)
ISV Lightning Webinar Series - Part 1 (December 1, 2015)
Salesforce Partners
 
Migrating Visualforce Pages to Lightning
Migrating Visualforce Pages to LightningMigrating Visualforce Pages to Lightning
Migrating Visualforce Pages to Lightning
Salesforce Developers
 
Angular-ifying Your Visualforce Pages
Angular-ifying Your Visualforce PagesAngular-ifying Your Visualforce Pages
Angular-ifying Your Visualforce Pages
Salesforce Developers
 
Force.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comForce.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.com
Salesforce Developers
 
Customizing Salesforce User Interfaces with Lightning Components
Customizing Salesforce User Interfaces with Lightning ComponentsCustomizing Salesforce User Interfaces with Lightning Components
Customizing Salesforce User Interfaces with Lightning Components
Salesforce Developers
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web Components
Salesforce Developers
 
Make Your App Lightning Ready with Winter '17 (December 8, 2016)
Make Your App Lightning Ready with Winter '17 (December 8, 2016)Make Your App Lightning Ready with Winter '17 (December 8, 2016)
Make Your App Lightning Ready with Winter '17 (December 8, 2016)
Salesforce Partners
 

Similar to Using Visualforce in Salesforce1 (20)

Building JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 PlatformBuilding JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 Platform
 
Singapore dev user group
Singapore   dev user groupSingapore   dev user group
Singapore dev user group
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDK
 
Salesforce1 for Developers
Salesforce1 for DevelopersSalesforce1 for Developers
Salesforce1 for Developers
 
Salesforce1 for Developers
Salesforce1 for DevelopersSalesforce1 for Developers
Salesforce1 for Developers
 
Force.com Friday - Intro to Visualforce
Force.com Friday - Intro to VisualforceForce.com Friday - Intro to Visualforce
Force.com Friday - Intro to Visualforce
 
Force.com Friday: Intro to Visualforce (May 8, 2015)
Force.com Friday: Intro to Visualforce (May 8, 2015)Force.com Friday: Intro to Visualforce (May 8, 2015)
Force.com Friday: Intro to Visualforce (May 8, 2015)
 
Entwicklung angepasster User Interfaces für Salesforce1
Entwicklung angepasster User Interfaces für Salesforce1Entwicklung angepasster User Interfaces für Salesforce1
Entwicklung angepasster User Interfaces für Salesforce1
 
Salesforce1 for developers
Salesforce1 for developersSalesforce1 for developers
Salesforce1 for developers
 
Salesforce1 for ISVs Webinar (July 17, 2014)
Salesforce1 for ISVs Webinar (July 17, 2014)Salesforce1 for ISVs Webinar (July 17, 2014)
Salesforce1 for ISVs Webinar (July 17, 2014)
 
Lightning Workshop London
Lightning Workshop LondonLightning Workshop London
Lightning Workshop London
 
AngularJS App In Two Weeks
AngularJS App In Two WeeksAngularJS App In Two Weeks
AngularJS App In Two Weeks
 
Salesforce1 for ISVs Webinar (May 15, 2014)
Salesforce1 for ISVs Webinar (May 15, 2014)Salesforce1 for ISVs Webinar (May 15, 2014)
Salesforce1 for ISVs Webinar (May 15, 2014)
 
ISV Lightning Webinar Series - Part 1 (December 1, 2015)
ISV Lightning Webinar Series - Part 1 (December 1, 2015)ISV Lightning Webinar Series - Part 1 (December 1, 2015)
ISV Lightning Webinar Series - Part 1 (December 1, 2015)
 
Migrating Visualforce Pages to Lightning
Migrating Visualforce Pages to LightningMigrating Visualforce Pages to Lightning
Migrating Visualforce Pages to Lightning
 
Angular-ifying Your Visualforce Pages
Angular-ifying Your Visualforce PagesAngular-ifying Your Visualforce Pages
Angular-ifying Your Visualforce Pages
 
Force.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comForce.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.com
 
Customizing Salesforce User Interfaces with Lightning Components
Customizing Salesforce User Interfaces with Lightning ComponentsCustomizing Salesforce User Interfaces with Lightning Components
Customizing Salesforce User Interfaces with Lightning Components
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web Components
 
Make Your App Lightning Ready with Winter '17 (December 8, 2016)
Make Your App Lightning Ready with Winter '17 (December 8, 2016)Make Your App Lightning Ready with Winter '17 (December 8, 2016)
Make Your App Lightning Ready with Winter '17 (December 8, 2016)
 

More from Salesforce Developers

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Salesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Salesforce Developers
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
Salesforce Developers
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
Salesforce Developers
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX India
Salesforce Developers
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local Development
Salesforce Developers
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web Components
Salesforce Developers
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer Highlights
Salesforce Developers
 
Live coding with LWC
Live coding with LWCLive coding with LWC
Live coding with LWC
Salesforce Developers
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
Salesforce Developers
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura Interoperability
Salesforce Developers
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce data
Salesforce Developers
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCP
Salesforce Developers
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in Salesforce
Salesforce Developers
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data Capture
Salesforce Developers
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DX
Salesforce Developers
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
Salesforce Developers
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS Connect
Salesforce Developers
 
Introduction to MuleSoft
Introduction to MuleSoftIntroduction to MuleSoft
Introduction to MuleSoft
Salesforce Developers
 
Modern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesModern App Dev: Modular Development Strategies
Modern App Dev: Modular Development Strategies
Salesforce Developers
 

More from Salesforce Developers (20)

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component Performance
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX India
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local Development
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web Components
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer Highlights
 
Live coding with LWC
Live coding with LWCLive coding with LWC
Live coding with LWC
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura Interoperability
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce data
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCP
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in Salesforce
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data Capture
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DX
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS Connect
 
Introduction to MuleSoft
Introduction to MuleSoftIntroduction to MuleSoft
Introduction to MuleSoft
 
Modern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesModern App Dev: Modular Development Strategies
Modern App Dev: Modular Development Strategies
 

Recently uploaded

WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Bert Blevins
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
Enterprise Wired
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
Matthew Sinclair
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
SynapseIndia
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
Andrey Yasko
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
ArgaBisma
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Bert Blevins
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
BookNet Canada
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
Larry Smarr
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
Awais Yaseen
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
KAMAL CHOUDHARY
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
Liveplex
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
Larry Smarr
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
Stephanie Beckett
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
Toru Tamaki
 

Recently uploaded (20)

WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
 

Using Visualforce in Salesforce1

  • 1. Using Visualforce in Salesforce1
  • 2. Speakers Sandeep Bhanot Mobile Geek (both kinds) @cloudysan
  • 3. 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.
  • 4. Introducing Salesforce1 All your past investments... Drag and drop UI customization Notifications Platform Publisher Actions ...now in the future Download Salesforce1 App today All Your Customizations All Your Devices All Your CRM All Your Apps https://yourinstance.salesforce.com/one/one.app
  • 5. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? §  How can I make it better?
  • 6. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? §  How can I make it better?
  • 7. Visualforce – Left Nav Visualforce Pages in Left Nav JavaScript navigation library available sforce.one.navigateToSObject etc.
  • 8. Visualforce – Publisher Actions Visualforce Pages as Publisher Actions (VF page needs to the extend Standard Controller for use with Object Specific Publisher Actions) JavaScript Pub-Sub library available to interact with the publisher publisher.setValidForSubmit publisher.post publisher.close
  • 9. Visualforce – Page Layout Visualforce Pages in Page Layouts (VF page needs to the extend Standard Controller)
  • 10. Visualforce – Mobile Cards Mobile Cards - Visualforce Pages on Record Detail (VF page needs to the extend Standard Controller)
  • 11. Visualforce in Salesforce1 §  <apex:page docType="html-5.0" …> §  ‘Available for Salesforce Mobile apps’ flag enabled §  VF page needs to the extend Standard Controller in order to use in the Page Layout, Mobile Cards or Publisher Actions Things to remember…
  • 12. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better?
  • 13. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better?
  • 14. Visualforce in Salesforce1 – UI/UX considerations Salesforce1 cannot auto-magically (yes, it’s a word) make Visualforce pages mobile-optimized
  • 15. Visualforce UI/UX considerations §  Design VF pages taking the limited real-estate in mobile into account §  Decide which form-factors your page has to support - phone, tablet, both §  Develop for the mobile context –  Use device features like geolocation, camera etc. where appropriate –  Mobile version of the page/app does not have to support all the bells and whistles – less is more –  Optimize for your most common mobile use case – discovery, data entry, search etc. §  <apex:page standardStylesheets="false"> §  Use Responsive Design principles (same as the Salesforce1 app)
  • 16. Making Visualforce Pages Mobile Optimized Mobile Design Templates www.developerforce.com/mobile/services/mobile-templates
  • 17. Making Visualforce Pages Mobile Optimized Twitter Bootstrap http://www.youtube.com/watch?v=W1TbyDH0RaY Using Visualforce and Bootstrap - http://bit.ly/VisualStrap Custom Bootstrap fork that works with default Visualforce styling (Community developed)
  • 18. Making Visualforce Pages Mobile Optimized Ionic Framework http://coenraets.org/blog/2014/02/sample-force-com-mobile- application-with-ionic-and-angularjs/
  • 19. Making Visualforce Pages Mobile Optimized Ratchet http://coenraets.org/blog/2014/03/building-mobile-apps-for- salesforce-com-with-ratchet-2-0/
  • 20. Making Visualforce Pages Mobile Optimized jQuery Mobile http://www.developerforce.com/mobile/getting-started/ html5/#jquery
  • 21. Using Standard Visualforce Tags in Salesforce1 <apex:repeat> <apex:outputPanel> Note: Representative sample only. This is not a comprehensive list <apex:pageBlock> <apex:pageBlockButtons> <apex:pageBlockSection> <apex:pageBlockSectionItem> <apex:pageBlockTable> <apex:inlineEditSupport> <apex:detail> <apex:inputField>** <apex:enhancedList> <apex:listViews> <apex:relatedList> <chatter:*> <liveagent:*> Works and Supported Supported, but avoid if possible Not Supported
  • 22. Using Standard Visualforce Tags in Salesforce1 §  Try and avoid using standard Visualforce tags (which are optimized for desktop) if possible. §  Use standard HTML markup (<div>, <section>, <p>, <a>, <li> etc.) + custom mobile-optimized CSS (e.g. Bootstrap) instead §  If you have to use structure tags like <apex:pageBlockSection>, use 1 column layout.
  • 23. Salesforce1 Style Guide http://sfdc-styleguide.herokuapp.com/ Keeping Visualforce pages consistent with the Salesforce1 look and feel
  • 24. Salesforce1 Style Guide https://github.com/joshbirk/onestarter OneStarter - An open-source jQuery plugin for easily making Visualforce pages appear in the style of Salesforce1.
  • 25. Visualforce in Salesforce1 - UI/UX summary Dos Don’ts Responsive design Desktop optimized design Standard HTML markup and custom CSS Standard VF structure tags and CSS Less is more Support every bell and whistle Use Mobile Context (e.g. camera, geolocation) Recreate desktop functionality Optimized for touch (e.g. larger tap areas, HTML5 form inputs) Optimized for click
  • 26. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better?
  • 27. §  Avoid ViewState (no <apex:form>) §  Favor Single Page apps (full page rendering is expensive on mobile) §  Consider JavaScript MV* Frameworks like AngularJS, Backbone etc. to provide structure Business Logic & Data Binding in Visualforce Top 3 things to remember….
  • 28. Business Logic & Data Binding in Visualforce §  Invoke Apex Controller/Extension methods from JavaScript §  Avoids ViewState (better performance) §  Stateless business logic §  Front-end heavy (i.e. JavaScript) development JavaScript Remoting
  • 29. Business Logic & Data Binding in Visualforce §  Basic CRUD operations on SObjects directly from JavaScript §  Avoids ViewState (better performance) §  Reduces server-side Apex code §  Front-end heavy (i.e. JavaScript) development §  Replaces ForceTk/RemoteTk (in the VF context) Visualforce Remote Objects (new Pilot in Spring ’14)
  • 30. Business Logic & Data Binding in Visualforce §  Use <apex:repeat> to display lists <apex:repeat> is your friend
  • 31. Business Logic & Data Binding in Visualforce Mobile Packs http://www.developerforce.com/mobile/services/mobile-packs §  Use popular open-source JavaScript MV* Frameworks in Visualforce §  Great way to build single-page mobile web apps §  Mobile Packs handle data binding with Salesforce
  • 32. Visualforce in Salesforce1 – Data Binding summary Dos Don’ts JavaScript Remoting <apex:form> Visualforce Remote Objects <apex:form> HTML5 Input Elements (tel, email, date etc.) <apex:inputField> <apex:input type=“tel/email/…”/> <apex:inputField> Single Page apps Multi-page apps JavaScript MV* Frameworks like AngularJS, Backbone etc. No JavaScript Framework Stateless & Asynchronous Server-side state & synchronous
  • 33. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better?
  • 34. Visualforce in Salesforce1 - Navigation Salesforce1 provides a JavaScript navigation library via the sforce.one object sforce.one.navigateToSObject sforce.one.navigateToURL sforce.one.navigateToFeed sforce.one.navigateToFeedItemDetail sforce.one.navigateToRelatedList sforce.one.navigateToList sforce.one.editRecord sforce.one.createRecord
  • 35. Visualforce in Salesforce1 - Navigation §  Avoid using window.open §  Manipulating window.location.href directly will NOT work §  Don’t use target="_blank” in navigation links §  External links (e.g. <a href=“www.test.com”>) will open in a new child browser §  Internal links will open in current window Things to remember….
  • 36. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better?
  • 37. Supporting multiple form factors in Visualforce But my Visualforce page has to work in Salesforce1 (phone & tablet) AND Desktop…
  • 38. Supporting multiple form factors in Visualforce Option 1 (existing pages) : Refactor to make mobile-friendly §  Minimize/eliminate use of VF tags like <apex:pageBlock>, <apex:detail> etc. that are not mobile-optimized and/or supported in Salesforce1 §  Replace <apex:form> with JavaScript Remoting or Remote Objects where possible
  • 39. Supporting multiple form factors in Visualforce Option 2 : Responsive Design Recommended approach
  • 40. Supporting multiple form factors in Visualforce Option 3 : Serve different content based on form-factor http://blogs.developerforce.com/developer-relations/2012/05/cross-device-html5-apps-using-visualforce.html Libraries like Device.js or Modernizr can be used to detect form-factor –  Redirect to different VF pages based on form factor, OR –  Conditionally show sections of the page based on form factor
  • 41. Supporting multiple form factors in Visualforce Remember to handle navigation differently in Salesforce1 vs Desktop
  • 42. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better?
  • 43. Device Access in Salesforce1 PhoneGap/Cordova type device access is not available in the Salesforce1 app. HOWEVER…. –  Geolocation API (check the Saleforce1 Dev Guide for an example) –  <input type="file" accept="image/*"/> (for Camera access)
  • 44. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better? –  Performance –  Debugging
  • 45. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better? –  Performance –  Debugging
  • 46. Visualforce Performance in Salesforce1 The 3 most important things about developing mobile web pages Performance, Performance, Performance.
  • 47. Visualforce Performance in Salesforce1 Some Performance tips for designing mobile VF pages §  Avoid viewstate (no <apex:form>) §  <apex:page cache="true" expires="600"> §  Minimize all your CSS and JavaScript (using tools like YUI Compressor) and compress images §  Use optimization techniques like image lazy loading and infinite scroll §  Insert/update the DOM in bulk to avoid browser reflows (e.g. insert an entire <ul> section instead of individual <li> elements) General §  Use libraries like FastClick to avoid the default 300ms tap delay in mobile web browsers §  Use lightweight JavaScript libraries like Zepto.js instead of Jquery §  Move your <script> statements to the end of the Visualforce page JavaScript
  • 48. Visualforce Performance in Salesforce1 Some Performance tips for designing mobile VF pages §  Use CSS Sprites to minimize HTTP connections §  Avoid CSS techniques like drop shadows, gradients etc. that affect page performance. Flat design is new black. §  Use Hardware Accelerated CSS properties where appropriate §  Use PNG/JPG images (no GIFs). Avoid images completely (use CSS3 instead) where possible. §  Build single page apps with CSS transitions between screens/sections §  Conditionally load static assets (CSS, images etc.) based on form factor CSS/Images
  • 49. Visualforce Performance in Salesforce1 Some Tools to help you measure page performance §  WebPageTest §  PageSpeed Insights §  Chrome Developer Tools - Timeline
  • 50. Visualforce in Salesforce1 §  Where can I use it? §  How do I use it? –  UI/UX –  Business Logic & Data Binding –  Navigation –  Supporting multiple form factors –  Device Access §  How can I make it better? –  Performance –  Debugging
  • 51. Salesforce1 comes in two flavors http://yourinstance.salesforce.com/one/one.app Web version Hybrid version Debugging Visualforce in Salesforce1
  • 52. Debug your Visualforce page in the web version of Salesforce1 first http://yourinstance.salesforce.com/one/one.app Debugging Visualforce in Salesforce1 Use standard web debugging tools like Chrome Dev. Tools and Firebug
  • 53. Debugging Visualforce pages running on a device (i.e. inside the Hybrid Salesforce1 app) http://people.apache.org/~pmuellr/weinre/docs/latest/ Debugging Visualforce in Salesforce1 Weinre – open source tool to debug web pages running on a device
  • 54. Salesforce1 Developer Resources §  Webinar: Intro to Salesforce1 Mobile App Development §  Dreamforce Sessions – bit.ly/s1-df-sessions §  Developer Guide – bit.ly/s1-dev-guide §  Blogs: –  6 things you need to know: bit.ly/s1-6-things –  Mobile cards: bit.ly/s1-mobile-cards
  • 55. Follow Developer Force for the Latest News @forcedotcom / #forcewebinar Developer Force – Force.com Community +Developer Force – Force.com Community Developer Force Developer Force Group