What is the AWS Mobile SDK for Android?

The AWS Mobile SDK for Android is an open-source software development kit distributed under the Apache Open Source license. The SDK provides libraries, code samples, and documentation to help developers build connected mobile applications using Amazon Web Services (AWS). Supported AWS services currently include:

Compatibility#

The AWS Mobile SDK for Android is compatible with Android 2.3.3 (API Level 10) or higher. For more information about the Android platform, see Android Developers.

Download the AWS Mobile SDK for Android#

About the AWS Mobile Services#

The AWS Mobile SDKs include client-side libraries for working with Amazon Web Services. These client libraries provide high-level, mobile-optimized interfaces to services such as DynamoDB, Amazon S3, and Amazon Kinesis.

The Mobile SDKs also include clients for Amazon Cognito and Amazon Mobile Analytics—web services designed specifically for use by mobile developers.

Amazon Cognito#

Amazon Cognito facilitates the delivery of scoped, temporary credentials to mobile devices or other untrusted environments, and it uniquely identifies a device or user and supplies the user with a consistent identity throughout the lifetime of an application. The Amazon Cognito Sync service enables cross-device syncing of application-related user data. Amazon Cognito also persists data locally, so that it's available even if the device is offline.

After you set up the SDK, you can start using Amazon Cognito by following the instructions at Authenticate Users with Amazon Cognito Identity and Sync User Data with Amazon Cognito Sync.

Amazon Mobile Analytics#

Amazon Mobile Analytics lets you collect, visualize, and understand app usage for your mobile apps. Reports are available for metrics on active users, sessions, retention, in-app revenue, and custom events, and can be filtered by platform and date range.

After you set up the SDK, you can start using Amazon Mobile Analytics by following the instructions at Track App Usage Data with Amazon Mobile Analytics.

Amazon Simple Storage Service (S3)#

Amazon Simple Storage Service (Amazon S3) provides secure, durable, highly-scalable object storage in the cloud. Using the AWS Mobile SDK, you can directly access Amazon S3 from your mobile app.

After you set up the SDK, you can start using Amazon S3 by following the instructions at Store and Retrieve Files with Amazon S3.

Amazon DynamoDB#

Amazon DynamoDB is a fast, highly scalable, highly available, cost-effective, nonrelational database service. DynamoDB removes traditional scalability limitations on data storage while maintaining low latency and predictable performance.

After you set up the SDK, you can start using DynamoDB by following the instructions at Store and Retrieve App Data in Amazon DynamoDB.

Amazon Kinesis#

Amazon Kinesis is a fully managed service for real-time processing of streaming data at massive scale.

After you set up the SDK, you can start using Amazon Kinesis by following the instructions at Process Streaming Data with Amazon Kinesis and Firehose.

AWS Lambda#

AWS Lambda is a compute service that runs your code in response to requests or events and automatically manages the compute resources for you, making it easy to build applications that respond quickly to new information.

After you set up the SDK, you can start using Lambda by following the instructions at Execute Code On Demand with Amazon Lambda.

What’s included in the AWS Mobile SDK for Android?#

The AWS SDK for Android includes the following:

  • Class libraries – Classes that hide much of the lower-level plumbing of the web service interface, including authentication, request retries, and error handling. Each service has its own library, so you can include class libraries for only the services you need and keep your application as small as possible.
  • Code samples – Practical examples of using the class libraries to build applications.
  • Documentation – Reference documentation for the AWS SDK for Android.

The SDK is distributed as a .zip file containing the following assets:

  • License.txt
  • Notice.txt
  • Readme.txt
  • lib/ – Contains Java archive files (.jar) that include AWS class libraries. To manage the size of your application, you can include only the files that you need for the services your application is using.
  • documentation/ – Includes Javadoc files and other documentation for using the AWS Mobile SDK for Android.
  • samples/ – Contains an HTML document with links to samples on GitHub. Samples are named based on the services they demonstrate.
  • src/ – Contains an HTML document with links to source on GitHub. Contains the original source files for the class libraries.
  • third-party/ – Contains third-party libraries that the SDK depends on.

Important

The AWS Mobile SDK for Android no longer includes a separate JAR for AWS Security Token Service. AWS STS is now bundled with the core, and including AWS STS as a separate JAR will result in a compile-time error.