Developing Mobile apps Using – Salesforce

Developing Mobile apps Using – Salesforce

In the world of electronics today people use the hand-held devices for everything from communicating and playing games to shopping and surfing the Internet. In fact, it’s nearly impossible to take the phone out of some people’s hands, this shift to the mobile devices has led to new ways for businesses to engage customers and employees quickly.

Accroding to Gartner by 2015 – mobile app/dev projects targeting smartphones and tablets will outnumber PC projects by 4:1 and at the same time US users accessing the Internet through PCs will shrink from 240 million consumers to 225 million. And, US mobile users will increase from 174 million to 265 million( IDC, Worldwide New Media Market Model, 2012)

The challenge today is to quickly develop the mobile apps businesses demand so that the connectivity with the customers, employees, partners, and products is faster and this requires a mobile strategy that keeps up with them. In a single word the concept of “Social Enterprise” is on the rise and today all the organizations are looking for apps for there various departments.

How salesforce helps developers and Business:

Developers by providing :

  • An API-first cloud platform, which means all of your apps connect to your business data
  • An extensible mobile app with uI frameworks, allowing you to build faster than ever
  • Support for all the latest HTMl5 and JavaScript mobile frameworks, like Angular, Backbone, and more
  • A mobile SDK to build custom native iOS and Android apps
  • Instant deployment, real-time distribution
  • More productivity tools to go even fast

Business users by providing a platform where they can:

  • Create an app with just clicks
  • Bring a business idea to life with an app—and have it be social and mobile—instantly
  • Build contextually aware, smart, action-oriented apps
  • Deliver data and insights to every employee
  • Add new users and control user access with just a few clicks

Snap-2013-04-08-at-13.10.55-730x473
The Salesforce Platform Mobile Services focuses to be a more open, more productive platform that give developers the tools and features they need to get the job done quickly and effectively while developing an App. SalesForce Mobile SDK 2.1 is such a solution which is an open-source suite of familiar technologies—like a REST API and OAuth 2.0—that can be used to build great mobile apps and at a very fast rate. The Salesforce Mobile SDK supports three development approaches for building mobile apps: native, HTML5, and hybrid.

760px-778-wiki-mobileSDK-GA2
1) Native App

The Salesforce Mobile SDK provides a great support for writing native apps for iOS and Android Operating Systems, it provides you with a library tht includes database query requests and the results of the same. One of the advantages of using Salesforce is moving to GA is that the APIs that developers use remains the same for the future versions, it also provides Authentic Management based on OAuth2 standard. The best feature being the inclusion of templates that saves a lot of time of the developers by saving them from writing codes for Database and taking them right into the business-logic, wueries, and displaying data on devices.

2) HTML5 App

The Mobile SDK also provides support for writing HTML5 apps that are optimized for viewing on the smaller screens of mobile devices. It does so by providing starter code that a developer can copy and customize. The code consists of mainly Javascript on a visualforce page that checks out for touch/click sends it ot hte Apex Controller then formats and places the result into HTML5 tags, providing a great boost to developers who are not familiar with Javascript and HTML5.

3) Hybrid App

This architecture that the Mobile SDK supports is hybrid its in-between completely native and completely HTML5-based. So what does it do? It is the one that makes a native mobile app that does little more than authenticating the user with Salesforce and act as a web browser by requesting the HTML5 Visualforce page and rendering it to the app. And the Mobile SDK helps by providing all the plumbing needed, only requesting a authentication key and the landing webpage for the app to load.

Pros and Cons of the Three Architecture:

Pros and Cons

Sales force also helps by simplfying the design process with the following services:

1. Mobile Design Templates

Salesforce offers more than 20 open source CSS and HTML templates. These pre-designed frameworks are easy to use, and can be quickly connected to any relevant Salesforce customer data via the developer’s Mobile Pack of choice.

salesforce_gallery
2. Mobile Application Gallery

In addition to the new mobile design templates, developers can access mobile app gallery featuring 20-plus complete applications. These sample provide the developers a jumping off point for their mobile app development process. All developers need to do is grab the code directly from Github and then customize it to make the apps their own.

salesforce_gallery_smartphones
3. Mobile Packs

To give developers even more freedom, Salesforce has now doubled the number of Mobile Packs to leverage the Salesforce Platform Mobile Services. The initial set of packs focused on leading JavaScript frameworks, such as JQuery Mobile and Backbone.js, the new mobile packs target developers with existing skills and communities including drag and drop with Appery.io, enterprise mobile components with Sencha Touch, and .Net developers with Xamarin.

Mobilr Packs
4. SmartSync Data Framework

Employees need to be able to access enterprise mobile data, even when they are not connected to their company’s network. Salesforce’s new SmartSync Data Framework, part of the Mobile SDK 2.0 release, takes care of managing offline data. This lightweight JavaScript framework also syncs needed information once connectivity is restored, so it is as up to date as possible.

salesforce_xamarin

Salesforce being cloud-based, removes the constant burden of trying to keep up with the latest in technology. At the same time the features provided by SalesForce makes it easier to use and implement a Mobile App developed on there platform. The various features of salesforce that makes it easier are:

  • drag-and-drop tools
  • auto-generated user interfaces
  • pre-built components
  • pre-designed templates
  • point and click development
  • social collboration
  • drag and drop analytics
  • multi language development
  • user access
  • cloud database

Refrences:

http://wiki.developerforce.com/page/Mobile_SDK

http://www.sundoginteractive.com/sunblog/posts/mobile-apps-for-salesforce-made-simple-with-mobile-sdk

http://www.ciber.com/us/index.cfm/technologies/salesforcecom/

http://www.salesforce.com/in/platform/mobile/

http://www2.developerforce.com/mobile/services/mobile-packs

http://www.desynit.com/how-we-help/developing-custom-mobile-salesforce-apps/

http://www.salesforce.com/platform/overview/

https://www.salesforce.com/form/conf/platform-appguide.jsp

https://secure2.sfdcstatic.com/assets/pdf/misc/Salesforce1-AppGuide-and-Gallery.pdf

http://thenextweb.com/insider/2013/04/09/salesforce-refreshes-its-developer-offering-with-updated-sdk-mobile-packs-and-accelerator-program/

http://www.marketwired.com/press-release/appcelerator-integrates-with-salesforce-mobile-pack-connect-mobile-applications-critical-1852662.htm

http://www.citeworld.com/mobile/21844/salesforce-development-platform-explained

http://readwrite.com/2013/07/31/salesforce-mobile-enterprise-developers-big-play#awesm=~oohRdb61St40lr

http://blogs.salesforce.com/company/2013/08/4-new-mobile-services-that-make-app-design-simple.html

http://www2.developerforce.com/en/mobile/resources

http://www2.developerforce.com/mobile/resources

http://wiki.developerforce.com/page/Developing_Hybrid_Apps_with_the_Salesforce_Mobile_SDK

http://wiki.developerforce.com/page/Developing_Mobile_Applications_With_Force.com_And_Sencha_Touch

http://wiki.developerforce.com/page/Developing_Mobile_Applications_with_Force.com_and_Appcelerator_Titanium

The following two tabs change content below.
Saurabh has more than 15 years of experience of developing IT applications and leading IT teams. He has strong expertise in web applications development using Java/PHP frameworks and mobile applications (ios/android) using native frameworks. At present he works as a technical consultant and mentor with various companies in capacity such as CTO, architect, team leader etc.