Mobile SDK FAQ

General Questions

Q: Will the webinar be available online?
A: View the webinar information page.

Q: Can I download the slides from the webinar?
A: Yes, you can download a PDF of the webinar slides from the webinar information page.

Q: Where can I get the code that was demonstrated during the webinar?
A: <Insert link to blog post here>

Q: How does the licensing work for the Mobile SDK?
A: The SDK is released under the BSD open source license.

Q: Will apps developed using the Mobile SDK have to change when touch.salesforce.com becomes available?
A: Native, hybrid, and HTML5 developed with the Mobile SDK are implemented independent of touch.salesforce.com. When touch becomes available, both apps will co-exist with each other.

Q: Can I use the Mobile SDK to develop mobile apps for phones as well as tablets? Does the development approach differ if I'm developing for a phone vs. tablet environment?
A: The Mobile SDK supports building mobile applications for all form factors (phone or tablet). The basic approach to using the Mobile SDK to develop apps (native, hybrid, or web) does not change, no matter which form factor you're targeting. You would, however, have to design your application differently depending on whether it is optimized for a phone or table environment (or both).


Developing Web (HTML5) Mobile Apps

Q: Can I develop a mobile web application using Visualforce that does not require Salesforce authentication?
A: Yes. You can create a public Sites page that exposes the mobile Visualforce page(s). Users will then be able to access your mobile web application without having to authenticate with Salesforce.com.

Q: How do I develop web (HTML5) mobile applications for Database.com (where Visualforce is not supported)?
A: In the case of Database.com, you can simply host your HTML5 pages (and other web assets) on any web server and use the REST API to get/update data from Database.com. As an example, you can host your HTML5 pages on Heroku. There are two fundamental architectures for accessing Database.com data from your HTML5 page. With one approach, you can make REST API calls directly from the browser (using the Force.com JavaScript REST Toolkit). This approach requires the use of a proxy to workaround the same origin policies enforced by most modern browsers. Alternatively, you can make REST or SOAP API calls to Database.com from the app server layer of your application.

Q: Are there any general rules or guidelines on when to use Apex (via JS Remoting, Apex REST, etc.) vs. the REST API when developing Visualforce-based web mobile applications?
A: The REST API provides CRUD access to Salesforce data. By contrast, using Apex on the server side (and exposing it to the Visualforce page via JS Remoting, Apex REST, or direct Visualforce data bindings) gives you more flexibility in terms of implementing custom business logic. Depending on your specific application requirements, you can use either of the methods to build dynamic mobile web applications on the Force.com platform. You could even combine the two by implementing some of your app functionality in Apex and using the REST API (via the Force.com JavaScript REST Toolkit) to perform basic data CRUD operations.


Developing Hybrid Mobile Apps

Q: When developing a hybrid mobile application, do I have to use Visualforce for my HTML5 pages?
A: No. You can, of course, develop your HTML5 pages in Visualforce as demonstrated during the webinar. However, you can also embed your HTML5 pages directly in the Salesforce Mobile SDK container and use the REST API (via JavaScript) to access data from Force.com or Database.com. The Salesforce Mobile SDK hybrid container supports both options.

Q: Can I access device features like the camera, contacts database, microphone, etc. with a hybrid application?
A: Yes. The Salesforce Mobile SDK hybrid container is based on the open source PhoneGap project and it allows developers to access device features via JavaScript. The webinar included a simple demo of how you can access the device camera in a hybrid mobile application.

Q: Can I list a hybrid mobile application on the Apple or Android Appstores?
A: Yes. In fact that is one of the main advantages of building a hybrid application when compared to a 100% web (HTML5) mobile app. It is, however, important to note that the architecture that you chose for your hybrid application (i.e., whether you host your HTML5 markup in Visualforce or embed it in the container) will have a direct bearing on the security review that is part of certain Appstore listing requirements.

Q: Does the Mobile SDK support offline secure storage for hybrid applications?
A: The Mobile SDK does not currently support offline storage. That feature is, however, on the near-term product roadmap for the SDK and will be supported in the near future.

Q: The Mobile SDK for building hybrid application uses OAuth 2.0. Does it also support SAML 2.0 based authentication?
A: Yes. You can configure OAuth 2.0 to authenticate via SAML 2.0. See this article for further details.

Q: Can I customize the login page that is presented to users when they launch a hybrid mobile application built using the Mobile SDK?
A: Only ISVs can customize the login page that is presented to users of a hybrid mobile app.