You have arrived at the source repository for the Salesforce Mobile SDK for Android. Welcome! Starting with our 2.0 release, there are now two ways you can choose to work with the Mobile SDK:
- If you'd like to work with the source code of the SDK itself, you've come to the right place! You can browse sample app source code and debug down through the layers to get a feel for how everything works under the covers. Read on for instructions on how to get started with the SDK in your development environment.
- If you're just eager to start developing your own application, the quickest way is to use our npm binary distribution package, called forcedroid, which is hosted on npmjs.org. Getting started is as simple as installing the npm package and launching your template app. You'll find more details on the forcedroid package page.
After cloning the SalesforceMobileSDK-Android project from github, run the install script from the command line:
This pulls submodule dependencies from github.
(Windows users: run
cscript install.vbs from the command line instead.)
- Registration and delivery of push notifications are now supported from a Salesforce org that enables push notifications.
- The underlying networking library has been replaced with Volley. Volley provides the ability to configure advanced features, such as managing the network queue and cancelation of requests.
Files API Support
- The Salesforce Mobile SDK now provides convenience methods that build specialized REST requests for file upload/download and sharing operations.
- A native sample app,
FileExplorer, and a hybrid sample app,
HybridFileExplorer, have been added to demonstrate these features.
- You can now access custom endpoints using the
- You can now access Apex REST endpoints using the
- This feature is only available on hybrid apps.
Other Technical Improvements
- Upgraded the
v2.2.2, in order to support Android 4.3 (Jellybean) and Android 4.4 (Kit Kat).
- Added the ability to merge Android Manifest files from the Mobile SDK library projects, using the
- Added the ability for an app to supply a custom
PasscodeActivity, using the
- Various bug fixes.
Check http://developer.force.com/mobilesdk for additional articles and tutorials
The Salesforce Mobile SDK provides essential libraries for quickly building native mobile apps that seamlessly integrate with the Salesforce cloud architecture. Out of the box, we provide an implementation of OAuth2, abstracting away the complexity of securely storing refresh tokens or fetching a new session ID when a session expires. The SDK also provides Java wrappers for the Salesforce REST API, making it easy to retrieve, store, and manipulate data.
The Salesforce Mobile SDK provides PIN-based OAuth token encryption for Android devices that don't provide full storage encryption functionality. The SDK implementation is NOT designed to provide complete security. It's simply offered as an option for temporarily protecting your app from eavesdroppers. Please use caution in your production deployment with sensitive data. We strongly recommend deploying production apps on the latest generation of Android devices with build-in device encryption.
The following steps will help you get started with your development environment, whether you choose to develop native apps or hybrid apps. See the
README files in the
hybrid/ folders for additional notes pertaining to development in those environments.
- Install the Android SDK (r21 or above): http://developer.android.com/sdk/index.html
- Install ant 1.8.0 or later: http://ant.apache.org/manual/install.html (in order to build from the command line)
- Install Eclipse: http://www.eclipse.org/
- Install the Android Development Tools (ADT) plugin for Eclipse (r21 or above): http://developer.android.com/sdk/eclipse-adt.html
- Get setup on github: http://help.github.com/
To pull down the SDK from github, create a new directory and git clone the salesforce SDK repo.
git clone https://github.com/forcedotcom/SalesforceMobileSDK-Android.git
If you would like to make suggestions, have questions, or encounter any issues, we'd love to hear from you. Post any feedback you have to the Mobile Community Discussion Board on developerforce.com.