Building Hybrid Mobile Apps for
AppExchange
Lower the friction to going mobile
James Sullivan, CloudAnswers (tm)
@jamesrsullivan
James Sullivan
CloudAnswers.com
Cloud Constructor
@jamesrsullivan
All about CloudAnswers
CloudAnswers is a Boston-based cloud technology advisory
company focused on the cloud innovation. We provide a
coaching service based on tech and business optimization.
▪ Quality: The cloud is our craft, and we feel an emotional bond to the
companies we help and the tools we build.
▪ Helping People: 1% of all company profit, employee time, and
product is donated to social benefit organizations, just like salesforce.
com.
Assumptions
Are you an expert Force.com developer looking to get
your great idea out there on the AppExchange, but it
includes native iOS or Android code? Join us to learn
about the AppExchange constraints around hybrid
models and the best practices around the security review,
license management, and API calls. We'll review the
process and then dive into the details with a code
walkthrough of a sample mobile app.
Agenda
• Understand hybrid apps
• Demo of building a hybrid app from a visualforce page
• AppExchange Tips
• Resources for getting started back at your office
Force.com Mobile SDK
Needs to be introduced
Saves me from learning both java AND obj-c
Device Plugins
Battery Status

Dialogs

Media

Camera

Camera

Media Capture

Console

File

Network Information

Contacts

File Transfer

Splashscreen

Device

Geolocation

Vibration

Device Motion

Globalization

Device Orientation

In-App Browser
Native features with JavaScript
navigator.camera.getPicture(
onPhotoDataSuccess, onFail,
{ quality: 25, destinationType : Camera.
DestinationType.DATA_URL });

navigator.contacts.find(
fields, onContactSuccess, onContactError, options);

#forcewebinar
App Architecture for Mobile SDK 2.0
Native
UI
Widgets
Salesforce UI

Hybrid

HTML5

Provided by OS
Roadmap

UI Elements

Mobile Packs
Data Management
Secure
Storage
Identit
y

#forcewebinar

Provided by OS

SmartSync
SmartStore

OAuth2 Client Library

July 2013 Webinar: Intro to Salesforce Mobile SDK: Building Hybrid Apps
http://http://events.developerforce.comhttp://events.developerforce.
com/en/events/webinars/mobile-http://events.developerforce.
Building an App: The Mobile MVP
• MVP = “Minimum Viable Product”
• Testing with friends and coworkers
• Using native for faster protptypes
DEMO: Make a mobile app
Advanced: Remove vs Local
Phone App

Hybrid
Remote

Phone App

Hybrid
Local
css, js, &
other
resources

Force.com
css, js, &
other
resources

Force.com

Data api

Data api
Publishing on AppExchange
AppExchange Tips
• Why AppExchange instead of App Store? Enterprise Visibility
• Very few apps are mobile-only but most apps have a need for
mobile components
Security Review Prerequisites & Tips
Automated Tests & Self-Assessments: security.force.com
Free security review: Security reviews are free for apps that are
free. If your application has a free part that is always free, your
security fee is waived and recertification is free as long as you
have a free edition.
Security Review Tips (Cont.)
Storing data outside of salesforce is the primary concern. Hybrid
Remote (standard Visualforce pages) has the fewest security
concerns because it is almost a native app. If you are using
offline storage and storing salesforce data, try to use a pre-vetted
solution like SmartStore.
Links & Resources
http://www2.developerforce.com/en/mobile/getting-started/ios
http://security.force.com
Resources (Advanced)
http://www.appgyver.com/steroids
http://trigger.io
STOP HERE
How do we get this app we just built to market?
AppExchange
App Store
Android Market

Security Review
1750 or 0
100, 1 time
free

User Base
TBD
Enterprise, often pay
Enterprise, often pay
Casual consumers

I THINK I CAN FILL OUT A BIGGER MATRIX THAT COMPARES
THE MARKETS FOR DEVS LOOKING AT HOW TO APPROACH
GOING TO MARKET
AppExchange Listing Overview
AppExchange Security Review
Native
Hybrid Server

…
………………

Hybrid Mobile Local …………
Hybrid Mobile Remote …….
Your app is live
Analytics
▪ Does your app stick?
▪ Where are users falling off?
▪ Crash reporting?

Marketing
▪ Use your ISV org
▪ Lead auto-response emails
Free App Ideas
Salesforce Caller ID for Android
Office Check-In (FourSquare Style) for Chatter
iPad Real Estate Listings Viewer for Traveling Brokers
Property Manager app for iPad
…
5 minutes on a 2011 MacBook Air
Building Hybrid Mobile Apps for AppExchange
Building Hybrid Mobile Apps for AppExchange
Building Hybrid Mobile Apps for AppExchange
Building Hybrid Mobile Apps for AppExchange

Building Hybrid Mobile Apps for AppExchange

  • 1.
    Building Hybrid MobileApps for AppExchange Lower the friction to going mobile James Sullivan, CloudAnswers (tm) @jamesrsullivan
  • 2.
  • 3.
    All about CloudAnswers CloudAnswersis a Boston-based cloud technology advisory company focused on the cloud innovation. We provide a coaching service based on tech and business optimization. ▪ Quality: The cloud is our craft, and we feel an emotional bond to the companies we help and the tools we build. ▪ Helping People: 1% of all company profit, employee time, and product is donated to social benefit organizations, just like salesforce. com.
  • 4.
    Assumptions Are you anexpert Force.com developer looking to get your great idea out there on the AppExchange, but it includes native iOS or Android code? Join us to learn about the AppExchange constraints around hybrid models and the best practices around the security review, license management, and API calls. We'll review the process and then dive into the details with a code walkthrough of a sample mobile app.
  • 5.
    Agenda • Understand hybridapps • Demo of building a hybrid app from a visualforce page • AppExchange Tips • Resources for getting started back at your office
  • 8.
    Force.com Mobile SDK Needsto be introduced Saves me from learning both java AND obj-c
  • 10.
    Device Plugins Battery Status Dialogs Media Camera Camera MediaCapture Console File Network Information Contacts File Transfer Splashscreen Device Geolocation Vibration Device Motion Globalization Device Orientation In-App Browser
  • 11.
    Native features withJavaScript navigator.camera.getPicture( onPhotoDataSuccess, onFail, { quality: 25, destinationType : Camera. DestinationType.DATA_URL }); navigator.contacts.find( fields, onContactSuccess, onContactError, options); #forcewebinar
  • 12.
    App Architecture forMobile SDK 2.0 Native UI Widgets Salesforce UI Hybrid HTML5 Provided by OS Roadmap UI Elements Mobile Packs Data Management Secure Storage Identit y #forcewebinar Provided by OS SmartSync SmartStore OAuth2 Client Library July 2013 Webinar: Intro to Salesforce Mobile SDK: Building Hybrid Apps http://http://events.developerforce.comhttp://events.developerforce. com/en/events/webinars/mobile-http://events.developerforce.
  • 13.
    Building an App:The Mobile MVP • MVP = “Minimum Viable Product” • Testing with friends and coworkers • Using native for faster protptypes
  • 14.
    DEMO: Make amobile app
  • 15.
    Advanced: Remove vsLocal Phone App Hybrid Remote Phone App Hybrid Local css, js, & other resources Force.com css, js, & other resources Force.com Data api Data api
  • 17.
  • 18.
    AppExchange Tips • WhyAppExchange instead of App Store? Enterprise Visibility • Very few apps are mobile-only but most apps have a need for mobile components
  • 19.
    Security Review Prerequisites& Tips Automated Tests & Self-Assessments: security.force.com Free security review: Security reviews are free for apps that are free. If your application has a free part that is always free, your security fee is waived and recertification is free as long as you have a free edition.
  • 20.
    Security Review Tips(Cont.) Storing data outside of salesforce is the primary concern. Hybrid Remote (standard Visualforce pages) has the fewest security concerns because it is almost a native app. If you are using offline storage and storing salesforce data, try to use a pre-vetted solution like SmartStore.
  • 21.
  • 22.
  • 24.
  • 26.
    How do weget this app we just built to market? AppExchange App Store Android Market Security Review 1750 or 0 100, 1 time free User Base TBD Enterprise, often pay Enterprise, often pay Casual consumers I THINK I CAN FILL OUT A BIGGER MATRIX THAT COMPARES THE MARKETS FOR DEVS LOOKING AT HOW TO APPROACH GOING TO MARKET
  • 27.
  • 28.
    AppExchange Security Review Native HybridServer … ……………… Hybrid Mobile Local ………… Hybrid Mobile Remote …….
  • 29.
    Your app islive Analytics ▪ Does your app stick? ▪ Where are users falling off? ▪ Crash reporting? Marketing ▪ Use your ISV org ▪ Lead auto-response emails
  • 30.
    Free App Ideas SalesforceCaller ID for Android Office Check-In (FourSquare Style) for Chatter iPad Real Estate Listings Viewer for Traveling Brokers Property Manager app for iPad …
  • 36.
    5 minutes ona 2011 MacBook Air