Amazon Mobile Hub is a mobile service, which allows to build, test and monitor usage of mobile apps rapidly and easily. It allows users to integrate various AWS services to your mobile application in matter of some clicks. Once the app is ready, Mobile Hub allows you to test the app on real devices as well as make use of analytics to track usage of the app. Mobile Hub allows users to focus more on the application building rather than concentrating on the infrastructure build.
It takes care of provisioning, configuring and managing the infrastructure you require. Users can make use of this AWS service for creating Android or iOS apps.
- Amazon Cognito: AWS service for user sign-in. Facebook, Google+ as well as custom login are currently supported.
- Amazon S3: Object storage service from AWS.
- Amazon SNS: Push notification services from AWS.
- AWS Lambda: Compute service where users can upload the code and AWS run the code when required.
- Amazon CloudFront: Global or single location CDN for the application.
- Amazon Mobile Analytics: Measure app usage, revenue and much more using this service.
- Amazon Device Farm: Mobile application testing on real devices hosted in AWS.
AWS Mobile Hub is used for an application where users will be authenticated using Facebook id. The application will allow the users to upload and download media in AWS S3 for each of activity happening in S3, the user will get notification as an email.
- - iOS
- o Xcode IDE (Integrated Development Environment)
- o Xcode 7.0 or newer
- - Android
- o Android Studio 1.4 or newer
- o Android SDK 4.4 (KitKat) API Level 19 or newer
- o Android SDK Build-tools 23.0.1
- o Android Device with Android OS 4.0.3 (IceCreamSandwich) API Level 15 or newer
Let’s begin with the creation of the project, go to the AWS management console, select Mobile Hub under Mobile services, this will give you the console of Mobile Hub.
Step – 1 Select “create a mobile project”
Step – 2 Click on “Configuration” for configuring other AWS Services.
In few clicks, user can configure the app to use required AWS services, AWS will take care of actual provisioning and configuration of those resources. AWS provisions the resources automatically and generates a working sample application that can be used to customize later by the user.
Step – 3 Select “User Sign-in”, provide required details.
After the configuration, “Build” the app. It allows us to choose the two major platforms such as iOS and Android for creating the app.
iOS project can be built and executed using Xcode whereas Android app supports Android Studio IDE with Android build tools.
Step – 4 Select “Android image” for android platform.
Step – 5 Browse to AWS S3, we will find that a bucket has been created by the Mobile Hub. Here, configure the bucket for the events such as upload and download which lead to triggering of the “Email Notification” using AWS SNS.
Step – 6 Now go back to the Mobile Hub console, under Build section we can see the “Download Android source package”, download this package.
Follow the steps according to the requirements and click on “I’m done with this step”.
Run the downloaded source package in Android SDK. This is how your Sample app will look on your device.
Tap the User sign-in and login. Now we’ll upload any media file into S3 by taping the “User Data Storage”. After uploading the file we can see it in S3 bucket. As we have uploaded the file into S3, we will receive notification as an email. In similar way we will receive notifications when a file is deleted.
What other services/tasks are integrated with Mobile Hub?
AWS Device Farm allows to test a list of most commonly used devices.
Amazon Mobile Analytics gives the statics such as “Daily active users”, “Monthly active users”, “Sticky factors” and many more details.
Resources gives an idea on all the AWS services the app is using. The main advantage of this tab is, it allows users to view all the used AWS services in a single window. The listed resources contains links to the respective services where the users will be able to do advanced management tasks as well.
- No Pricing for AWS Mobile Hub
- Users are billed as per the resource that they create (or) use for their mobile application.