SlideShare ist ein Scribd-Unternehmen logo
1 von 51
Downloaden Sie, um offline zu lesen
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Olivier Klein 奧樂凱
Solutions Architect, Greater China
April 2016
Build Mobile Apps using
AWS SDKs and Mobile Hub
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Manage users and identity providers
and sync prefs across devices
Securely access
cloud resources
Test across multiple devices
and operating systems
Track active users,
engagement
Run stateless custom
code without servers
Store user-generated content
and share it
Deliver content quickly globally
Bring users back to your app by sending
messages reliably
Store and query fast NoSQL data
across users and devices
Collect real-time event logs
and take actions quickly
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
SDKs
Java Python (boto) PHP .NET Ruby Node.js
iOS Android Go
JavaScript
C++
OK let’s build an App!
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
• Authenticates your users
• Facebook, Google,
Amazon,Twitter, OpenID
• Anonymous
• Manages the users and
synchronize data across
multiple devices
• Allows secure communication
with other AWS services
Amazon Cognito
Amazon
Cognito
Initialize the Cognito Client
CognitoCachingCredentialsProvider cognitoProvider =
new CognitoCachingCredentialsProvider(
myActivity.getContext(), // get the context for the current activity
"AWS_ACCOUNT_ID",
"COGNITO_IDENTITY_POOL_ID",
"arn:aws:iam::AWS_ACCOUNT_ID:role/UNAUTHENTICATED_ROLE",
"arn:aws:iam::AWS_ACCOUNT_ID:role/AUTHENTICATED_ROLE",
Regions.US_EAST_1
);
// Create a service client with the provider
AmazonDynamoDB client = new AmazonDynamoDBClient(cognitoProvider);
Store and Synchronize Data
CognitoSyncManager syncClient = new
CognitoSyncManager(myActivity.getContext(),
COGNITO_POOL_ID, Regions.YOUR_REGION, cognitoProvider);
Dataset dataset = client.openOrCreateDataset("myDataset");
dataset.put("myKey", "my value");
String value = dataset.get("myKey");
dataset.remove("myKey");
dataset.synchronizeOnConnectivity(this, syncCallback);
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Control access to your AWS resources
• Create users, groups or roles
• Fine grained control access control with IAM
policies
• Control who can do what from where
• Permit resource access social identities
• Easily add multi factor authentication using
hardware tokens or smartphone apps
Identity and Access Management (IAM)
{
"Effect":"Allow",
"Action":["s3:*"],
"Resource":"*"
}
{
"Effect": "Allow",
"Action": ["cognito-sync:*"],
"Resource": "*"
}
{
"Effect": "Deny",
"Action": ["dynamodb:*"],
"Resource": "*"
}
Allow
Actions:
All S3
Sync store Operations
Resource:
All resources within
these services
Deny
Actions:
All DDB Operations
Resource:
All resources
Access Policy for IAM Role
Allow
Actions:
S3 Get/Put operations
Resource:
Only to a specific part
of bucket to that identity
{
"Effect": "Allow”,
"Action": ["s3:GetObject","s3:PutObject"],
"Resource": ["arn:aws:s3:::
myBucket/amazon/myapp/${cognito-identity.amazonaws.com:sub}"]
}
Allow
Actions:
DDB Get/Put operations
Resource:
Only to a specific cells in
the database
{
"Effect": "Allow”,
"Action": ["dynamodb:GetItem", "dynamodb:PutItem"],
"Resource" : [ "arn:aws:dynamodb:REGION:12345:table/TABLE_NAME”],
"Condition": {
"ForAllValues:StringEquals”:{
"dynamodb:LeadingKeys": ["${cognito-identity.amazonaws.com:sub}"],
"dynamodb:Attributes”: ["Wins","Losses”,"TopScore",”DateTime" ]
},
}
Access Policy Restriction (Policy Variables)
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
AWS Device Farm
• Test your app on real devices in the
AWS cloud
• Fully managed and scalable test
platform
• Many different smartphone and tablet
models available
• Full built-in test suite
• Integration with custom frameworks
(e.g. Appium, Calabash etc.)
AWS Device
Farm
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Amazon Mobile Analytics
• Allows to collect, visualize and
understand your mobile app
usage
• Scales seamlessly to billions of
events per day
• You retain full control and
ownership of the data
Amazon Mobile
Analytics
Get insights into app
specific actions that
your users take
Examples
Track the number of
Likes/Shares in a
news app
Player abort rates
per level in a game
Number of songs
playedin a music app
In-app purchase item
popularity
Custom Events
Initialize Mobile Analytics
// Within your activity
private static MobileAnalyticsManager analytics;
// Within your activity onCreate()
try {
AnalyticsConfig options = new AnalyticsConfig();
options.withAllowsWANDelivery(true);
analytics = MobileAnalyticsManager.getOrCreateInstance(
getApplicationContext(),
"YOU MOBILE ANALYTICS APP ID",
Regions.US_EAST_1,
cognitoProvider
);
} catch(InitializationException ex) {
Log.e(this.getClass().getName(), "Failed to initialize Mobile Analytics", ex);
}
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
AWS Lambda
• Run your code in the cloud, fully
managed and highly-available
• Triggered through API calls or
state changes in your setup (S3,
DynamoDB, SNS, Kinesis)
• Scales automatically to match
the incoming event rate
• Charged per 100ms execution
time
Amazon
Kinesis
Amazon Lambda
Amazon
S3
Amazon
DynamoDB
Amazon API
Gateway
Amazon
SNS
Adding a Lambda Backend to your App
Initialize the LambdaFactory and define the Interface for the functions
Call synchronize on the dataset
Create the Lambda Function
lambda = new LambdaInvokerFactory(context, Regions.US_WEST_2, provider);
//interface
@LambdaFunction(functionName="cloudFunction”)
String localFunction(String nameInfo);
lambda.localFunction(“Hello From “); // this will output “Hello From Lambda”
exports.handler = function(event, context) {
context.done(null, event + 'Lambda'); // SUCCESS with message
};
How to build an even better backend?
Back-end logic DatabaseMobile
Microservices with API Gateway and Lambda
Amazon
Lambda
Amazon API
Gateway
Amazon
DynamoDB
Microservice
Amazon API Gateway
• Fully managed and scalable RESTful
API gateway service
• Powered through our content
delivery network via our 53 global
edge locations
• Provides DDoS protection and
throttling capabilities
• Multiple API stages which you define
(e.g. dev, test, prod)
AWS Lambda
Amazon API
Gateway
Amazon
EC2
AWS API
On-prem
server
When to choose API Gateway vs. Direct SDK?
• Amazon API Gateway adds an additional layer
between your mobile users and your logic and
data stores in order to:
• Allow back-end logic to be interchanged without
mobile app code modifications
• Ability to throttle individual users or requests
• Protect against DDoS attacks including
counterfeit requests (Layer 7) and SYN floods
(Layer 3)
• Provides a caching layer for your calls
• Enables CORS for all AWS service for web apps
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Amazon S3 & Amazon CloudFront
• Amazon S3
• Highly available object storage
• Designed for 99.999999999% durability
• Offers HTTP / HTTPS endpoint to objects
• Amazon CloudFront
• Content Delivery Network with 54 edge
locations across the world
• Caches content on edge locations for low
latency
Amazon S3
Amazon
CloudFront
// Creating the transfer utility
AmazonS3 s3 = new AmazonS3Client(cognitoProvider);
TransferUtility transferUtility =
new TransferUtility(s3, getApplicationContext());
// Upload file
TransferObserver observer = transferUtility.upload(bucket, filename, file);
// Download image
TransferObserver observer = transferUtility.download(bucket, filename, file);
Use Transfer Utility for S3
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Amazon SNS Mobile Push Notifications
• Amazon SNS is a fully
managed, cross-platform
mobile push intermediary
service
• Fully scalable to millions
of devices
• Allows to create topics
(e.g. per geo, interest,
usage pattern etc.)
Amazon SNS
Apple APNS
Google GCM
Amazon ADM
Windows WNS and
MPNS
Baidu CP
Android Phones and Tablets
Apple iPhones and iPads
Kindle Fire Devices
Android Phones and Tablets in China
iOS
Windows Phone Devices
Amazon
SNS
AmazonSNSClient snsClient = new AmazonSNSClient();
CreatePlatformEndpointRequest request =
new CreatePlatformEndpointRequest()
.withPlatformApplicationArn(platformApplicationArn)
.withToken(deviceToken);
//register device
CreatePlatformEndpointResult result =
snsClient.createPlatformEndpoint(request);
Device Registration – Code example
var sns = new SNS({ region: ’ap-southeast-1’});
// send message to single device (could also be a topic)
var endpointArn = 'arn:aws:sns:ap-southeast-
1:12345678:endpoint/5d3954e1-7d68-365a-80c2-95ae98ae4336';
// Message to send
var message = ’New player just joined your game!';
sns.sendMessage(endpointArn, message, function(err, messageId) {
if (err)
console.log(’Error occured with device %s', endpointArn);
});
Send Push Notifications via AWS Lambda
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Amazon DynamoDB
• Schemaless Data Model
• Seamless scalability
• No storage or throughput limits
• Consistent low latency performance
• High durability and availability
• Replicated across 3 facilities
DynamoDB
table
items
attributes
Fully Managed NoSQL Database Service
@DynamoDBTable(tableName = ”User")
public static class User {
private String hash, nickname, avatar;
private int score;
@DynamoDBHashKey(attributeName = ”hash")
public String getHash() {
return hash;
}
public void setHash(String hash) {
this.hash = hash;
}
@DynamoDBAttribute(attributeName=”nickname")
public String getNickanme() {
return nickname;
}
...
hash nickname avatar score
abce6 Oli4 s3://bkt/av1.jpg 1500
feru64 LoLZ s3://bkt/lolz56.jpg 800
4568c L33t s3://bkt2/cat.png 750
Table: User
Object Mapper Example - Class
// Create a user object
User user = new User();
note.setHash(”abce64”);
note.setNickname(”Oli4");
note.setAvatar(”s3://mybucket/av1.jpg");
note.setScore(0);
// Save user object to DynamoDB
mapper.save(user);
// Update score and save user again
user.setScore(user.getScore()+100);
mapper.save(user);
// Load another user
User anotherUser = mapper.load(User.class,”asian_tiger_1234”);
Object Mapper Example – Store and Update
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Stream in Real Time: Amazon Kinesis
• Real-Time Data Processing over
large distributed streams
• Elastic capacity that scales to
millions of events per second
• React In real-time upon incoming
stream events
• Reliable stream storage
replicated across 3 facilities
Amazon Kinesis
KinesisRecorder
String kinesisDirectory = "YOUR_UNIQUE_DIRECTORY";
KinesisRecorder recorder = new KinesisRecorder(
cognitoProvider,
Regions.AP_SOUTHEAST_1,
getDir(kinesisDirectory, MODE_PRIVATE));
recorder.saveRecord(”Message1".getBytes(),"MyStreamName");
recorder.saveRecord(”Message2".getBytes(),"MyStreamName");
recorder.submitAllRecords();
Process and Notify in AWS Lambda
exports.handler = function(event, context) {
event.Records.forEach(function(record) {
payload = new Buffer(record.kinesis.data, 'base64').toString('ascii');
UserEvent event = new UserEvent(payload);
if (event.position == TREASURE_BONUS_COORD) {
var message = ’You found the special treasure!';
sns.sendMessage(endpointArn, message);
}
});
context.succeed();
};
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3
Amazon CloudFront
Amazon DynamoDB
Amazon Lambda
Amazon SNS
Mobile Push
AWS Mobile SDK
Amazon Kinesis
Authenticate & Sync
Authorize access
Analyze User Behavior
Store Content
Test across
Devices
Deliver Content
Store Data
Record Real-Time EventsRun Business Logic
Send Push Notifications
Great, AWS has all we need, but it’s a bit complex!
AWS Mobile Hub
• Allows to build mobile apps within
minutes
• Single integrated console to use all
AWS services for mobile
• Automatically provisions all necessary
AWS services based on selected features
• Automatic code generation for iOS
(Objective-C / Swift) and Android
• Uses security best practices with
AWS IAM
AWS Mobile Hub
Create a project and add features
Thank you!
Olivier Klein 奧樂凱
Solutions Architect, Greater China

Weitere ähnliche Inhalte

Was ist angesagt?

Mobile App Development with Amazon Web Services Mobile Hub
Mobile App Development with Amazon Web Services Mobile HubMobile App Development with Amazon Web Services Mobile Hub
Mobile App Development with Amazon Web Services Mobile HubAmazon Web Services
 
Real-time Visibility at Scale with Sumo Logic
Real-time Visibility at Scale with Sumo LogicReal-time Visibility at Scale with Sumo Logic
Real-time Visibility at Scale with Sumo LogicAmazon Web Services
 
Transforming Governments in the Cloud
Transforming Governments in the CloudTransforming Governments in the Cloud
Transforming Governments in the CloudAmazon Web Services
 
Build a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS LambdaBuild a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS LambdaTheFamily
 
Smart Cities. Brad Coughlan. AWS
Smart Cities. Brad Coughlan. AWSSmart Cities. Brad Coughlan. AWS
Smart Cities. Brad Coughlan. AWSHelen Rogers
 
AWS Mobile Hub Overview
AWS Mobile Hub OverviewAWS Mobile Hub Overview
AWS Mobile Hub OverviewDanilo Poccia
 
Add User Sign in and Management to your Apps with Amazon Cognito
Add User Sign in and Management to your Apps with Amazon CognitoAdd User Sign in and Management to your Apps with Amazon Cognito
Add User Sign in and Management to your Apps with Amazon CognitoAmazon Web Services
 
Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015Ian Massingham
 
Leveraging Hybid IT for More Robust Business Services
Leveraging Hybid IT for More Robust Business ServicesLeveraging Hybid IT for More Robust Business Services
Leveraging Hybid IT for More Robust Business ServicesAmazon Web Services
 
Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps Amazon Web Services
 
Easily Govern and Audit your AWS Resources
Easily Govern and Audit your AWS ResourcesEasily Govern and Audit your AWS Resources
Easily Govern and Audit your AWS ResourcesAmazon Web Services
 
How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...
How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...
How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...Amazon Web Services
 
One Click Enterprise IoT Services - March 2017 AWS Online Tech Talks
One Click Enterprise IoT Services - March 2017 AWS Online Tech TalksOne Click Enterprise IoT Services - March 2017 AWS Online Tech Talks
One Click Enterprise IoT Services - March 2017 AWS Online Tech TalksAmazon Web Services
 
Scaling Security Operations and Automating Governance: Which AWS Services Sho...
Scaling Security Operations and Automating Governance: Which AWS Services Sho...Scaling Security Operations and Automating Governance: Which AWS Services Sho...
Scaling Security Operations and Automating Governance: Which AWS Services Sho...Amazon Web Services
 
Real-time Analytics with Open-Source
Real-time Analytics with Open-SourceReal-time Analytics with Open-Source
Real-time Analytics with Open-SourceAmazon Web Services
 
Deep-Dive: Building Native iOS and Android Application with the AWS Mobile SDK
Deep-Dive: Building Native iOS and Android Application with the AWS Mobile SDKDeep-Dive: Building Native iOS and Android Application with the AWS Mobile SDK
Deep-Dive: Building Native iOS and Android Application with the AWS Mobile SDKAmazon Web Services
 
Journey Through the Cloud - Mobile & Social Apps
Journey Through the Cloud - Mobile & Social AppsJourney Through the Cloud - Mobile & Social Apps
Journey Through the Cloud - Mobile & Social AppsAmazon Web Services
 
AWS AWSome Day London July 2015
AWS AWSome Day London July 2015 AWS AWSome Day London July 2015
AWS AWSome Day London July 2015 Ian Massingham
 

Was ist angesagt? (20)

Mobile App Development with Amazon Web Services Mobile Hub
Mobile App Development with Amazon Web Services Mobile HubMobile App Development with Amazon Web Services Mobile Hub
Mobile App Development with Amazon Web Services Mobile Hub
 
Real-time Visibility at Scale with Sumo Logic
Real-time Visibility at Scale with Sumo LogicReal-time Visibility at Scale with Sumo Logic
Real-time Visibility at Scale with Sumo Logic
 
Transforming Governments in the Cloud
Transforming Governments in the CloudTransforming Governments in the Cloud
Transforming Governments in the Cloud
 
Build a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS LambdaBuild a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS Lambda
 
Smart Cities. Brad Coughlan. AWS
Smart Cities. Brad Coughlan. AWSSmart Cities. Brad Coughlan. AWS
Smart Cities. Brad Coughlan. AWS
 
AWS Mobile Hub Overview
AWS Mobile Hub OverviewAWS Mobile Hub Overview
AWS Mobile Hub Overview
 
Add User Sign in and Management to your Apps with Amazon Cognito
Add User Sign in and Management to your Apps with Amazon CognitoAdd User Sign in and Management to your Apps with Amazon Cognito
Add User Sign in and Management to your Apps with Amazon Cognito
 
Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015Intro Presentation at AWS AWSome Day Glasgow September 2015
Intro Presentation at AWS AWSome Day Glasgow September 2015
 
Leveraging Hybid IT for More Robust Business Services
Leveraging Hybid IT for More Robust Business ServicesLeveraging Hybid IT for More Robust Business Services
Leveraging Hybid IT for More Robust Business Services
 
Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps
 
Easily Govern and Audit your AWS Resources
Easily Govern and Audit your AWS ResourcesEasily Govern and Audit your AWS Resources
Easily Govern and Audit your AWS Resources
 
How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...
How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...
How Splunk and AWS Enabled End-to-End Visibility for PagerDuty and Bolstered ...
 
Mobile applicationdevelopment
Mobile applicationdevelopmentMobile applicationdevelopment
Mobile applicationdevelopment
 
Getting Started with AWS IoT
Getting Started with AWS IoTGetting Started with AWS IoT
Getting Started with AWS IoT
 
One Click Enterprise IoT Services - March 2017 AWS Online Tech Talks
One Click Enterprise IoT Services - March 2017 AWS Online Tech TalksOne Click Enterprise IoT Services - March 2017 AWS Online Tech Talks
One Click Enterprise IoT Services - March 2017 AWS Online Tech Talks
 
Scaling Security Operations and Automating Governance: Which AWS Services Sho...
Scaling Security Operations and Automating Governance: Which AWS Services Sho...Scaling Security Operations and Automating Governance: Which AWS Services Sho...
Scaling Security Operations and Automating Governance: Which AWS Services Sho...
 
Real-time Analytics with Open-Source
Real-time Analytics with Open-SourceReal-time Analytics with Open-Source
Real-time Analytics with Open-Source
 
Deep-Dive: Building Native iOS and Android Application with the AWS Mobile SDK
Deep-Dive: Building Native iOS and Android Application with the AWS Mobile SDKDeep-Dive: Building Native iOS and Android Application with the AWS Mobile SDK
Deep-Dive: Building Native iOS and Android Application with the AWS Mobile SDK
 
Journey Through the Cloud - Mobile & Social Apps
Journey Through the Cloud - Mobile & Social AppsJourney Through the Cloud - Mobile & Social Apps
Journey Through the Cloud - Mobile & Social Apps
 
AWS AWSome Day London July 2015
AWS AWSome Day London July 2015 AWS AWSome Day London July 2015
AWS AWSome Day London July 2015
 

Andere mochten auch

Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesAmazon Web Services
 
Mobile Web and App Development with AWS
Mobile Web and App Development with AWSMobile Web and App Development with AWS
Mobile Web and App Development with AWSAmazon Web Services
 
Amazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best PracticesAmazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best PracticesAmazon Web Services
 
(MBL317) NEW! Introducing AWS Mobile Hub
(MBL317) NEW! Introducing AWS Mobile Hub(MBL317) NEW! Introducing AWS Mobile Hub
(MBL317) NEW! Introducing AWS Mobile HubAmazon Web Services
 
AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...
AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...
AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...Amazon Web Services
 
Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Harish Ganesan
 
Amazon Cognito + Lambda + S3 + IAM
Amazon Cognito + Lambda + S3 + IAM Amazon Cognito + Lambda + S3 + IAM
Amazon Cognito + Lambda + S3 + IAM Andriy Samilyak
 
(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014
(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014
(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014Amazon Web Services
 
Build high performing mobile apps, faster with AWS
Build high performing mobile apps, faster with AWSBuild high performing mobile apps, faster with AWS
Build high performing mobile apps, faster with AWSShiva Narayanaswamy
 
Jitney, Kafka at Airbnb
Jitney, Kafka at AirbnbJitney, Kafka at Airbnb
Jitney, Kafka at Airbnbalexismidon
 
Building Event-Driven Serverless Applications - AWS - Danilo Poccia
Building Event-Driven Serverless Applications - AWS - Danilo PocciaBuilding Event-Driven Serverless Applications - AWS - Danilo Poccia
Building Event-Driven Serverless Applications - AWS - Danilo PocciaIT Talent College
 
短期間で大規模なシンクラ環境を用意した話
短期間で大規模なシンクラ環境を用意した話短期間で大規模なシンクラ環境を用意した話
短期間で大規模なシンクラ環境を用意した話淳 千葉
 
Building a Scalable and Highly Available Web Service with AWS: A Live Demo
Building a Scalable and Highly Available Web Service with AWS: A Live DemoBuilding a Scalable and Highly Available Web Service with AWS: A Live Demo
Building a Scalable and Highly Available Web Service with AWS: A Live DemoDanilo Poccia
 
Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...
Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...
Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...Amazon Web Services
 
Get Value From Your Data
Get Value From Your DataGet Value From Your Data
Get Value From Your DataDanilo Poccia
 
How & When to Use NoSQL at Websummit Dublin
How & When to Use NoSQL at Websummit DublinHow & When to Use NoSQL at Websummit Dublin
How & When to Use NoSQL at Websummit DublinAmazon Web Services
 

Andere mochten auch (20)

Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile Services
 
AWS Mobile Hub Overview
AWS Mobile Hub OverviewAWS Mobile Hub Overview
AWS Mobile Hub Overview
 
Mobile Web and App Development with AWS
Mobile Web and App Development with AWSMobile Web and App Development with AWS
Mobile Web and App Development with AWS
 
Amazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best PracticesAmazon EMR Deep Dive & Best Practices
Amazon EMR Deep Dive & Best Practices
 
(MBL317) NEW! Introducing AWS Mobile Hub
(MBL317) NEW! Introducing AWS Mobile Hub(MBL317) NEW! Introducing AWS Mobile Hub
(MBL317) NEW! Introducing AWS Mobile Hub
 
AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...
AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...
AWS re:Invent 2016: Deep-Dive: Native, Hybrid and Web patterns with Serverles...
 
Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS
 
AWS Mobile Hub
AWS Mobile HubAWS Mobile Hub
AWS Mobile Hub
 
Amazon Cognito + Lambda + S3 + IAM
Amazon Cognito + Lambda + S3 + IAM Amazon Cognito + Lambda + S3 + IAM
Amazon Cognito + Lambda + S3 + IAM
 
(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014
(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014
(MBL310) Workshop: Build iOS Apps Using AWS Mobile Services | AWS re:Invent 2014
 
Globant and Big Data on AWS
Globant and Big Data on AWSGlobant and Big Data on AWS
Globant and Big Data on AWS
 
Mobile on AWS
Mobile on AWSMobile on AWS
Mobile on AWS
 
Build high performing mobile apps, faster with AWS
Build high performing mobile apps, faster with AWSBuild high performing mobile apps, faster with AWS
Build high performing mobile apps, faster with AWS
 
Jitney, Kafka at Airbnb
Jitney, Kafka at AirbnbJitney, Kafka at Airbnb
Jitney, Kafka at Airbnb
 
Building Event-Driven Serverless Applications - AWS - Danilo Poccia
Building Event-Driven Serverless Applications - AWS - Danilo PocciaBuilding Event-Driven Serverless Applications - AWS - Danilo Poccia
Building Event-Driven Serverless Applications - AWS - Danilo Poccia
 
短期間で大規模なシンクラ環境を用意した話
短期間で大規模なシンクラ環境を用意した話短期間で大規模なシンクラ環境を用意した話
短期間で大規模なシンクラ環境を用意した話
 
Building a Scalable and Highly Available Web Service with AWS: A Live Demo
Building a Scalable and Highly Available Web Service with AWS: A Live DemoBuilding a Scalable and Highly Available Web Service with AWS: A Live Demo
Building a Scalable and Highly Available Web Service with AWS: A Live Demo
 
Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...
Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...
Speed and Reliability at Any Scale: Amazon SQS and Database Services (SVC206)...
 
Get Value From Your Data
Get Value From Your DataGet Value From Your Data
Get Value From Your Data
 
How & When to Use NoSQL at Websummit Dublin
How & When to Use NoSQL at Websummit DublinHow & When to Use NoSQL at Websummit Dublin
How & When to Use NoSQL at Websummit Dublin
 

Ähnlich wie Build Mobile Apps using AWS SDKs and AWS Mobile Hub

AWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver Klein
AWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver KleinAWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver Klein
AWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver KleinAmazon Web Services Korea
 
Building Cloud-Powered Mobile Apps
Building Cloud-Powered Mobile AppsBuilding Cloud-Powered Mobile Apps
Building Cloud-Powered Mobile AppsDanilo Poccia
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsDanilo Poccia
 
AWS Webinar - 201 Developing mobile apps with AWS
AWS Webinar - 201 Developing mobile apps with AWSAWS Webinar - 201 Developing mobile apps with AWS
AWS Webinar - 201 Developing mobile apps with AWSAmazon Web Services
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsDanilo Poccia
 
(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB
(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB
(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDBAmazon Web Services
 
Serverless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSServerless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSAmazon Web Services
 
AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...
AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...
AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...Amazon Web Services
 
Improve monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsImprove monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsAmazon Web Services
 
Accelerate Your Mobile Development Journey with AWS
Accelerate Your Mobile Development Journey with AWSAccelerate Your Mobile Development Journey with AWS
Accelerate Your Mobile Development Journey with AWSAmazon Web Services
 
AWS Cloud Kata 2014 | Jakarta - 2-2 Mobile
AWS Cloud Kata 2014 | Jakarta - 2-2 MobileAWS Cloud Kata 2014 | Jakarta - 2-2 Mobile
AWS Cloud Kata 2014 | Jakarta - 2-2 MobileAmazon Web Services
 
Serverless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSServerless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSAmazon Web Services
 
Building Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit DiublinBuilding Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit DiublinAmazon Web Services
 
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...Amazon Web Services
 
AWS Mobile Hub + AWS Device Farm
AWS Mobile Hub + AWS Device FarmAWS Mobile Hub + AWS Device Farm
AWS Mobile Hub + AWS Device FarmAmazon Web Services
 
Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesAmazon Web Services
 
Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesAmazon Web Services
 
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)Amazon Web Services
 

Ähnlich wie Build Mobile Apps using AWS SDKs and AWS Mobile Hub (20)

AWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver Klein
AWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver KleinAWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver Klein
AWS Innovate 2016: Build Mobile Apps using AWS SDKs and Mobile Hub- Oliver Klein
 
Building Cloud-Powered Mobile Apps
Building Cloud-Powered Mobile AppsBuilding Cloud-Powered Mobile Apps
Building Cloud-Powered Mobile Apps
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile Apps
 
AWS Webinar - 201 Developing mobile apps with AWS
AWS Webinar - 201 Developing mobile apps with AWSAWS Webinar - 201 Developing mobile apps with AWS
AWS Webinar - 201 Developing mobile apps with AWS
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile Apps
 
(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB
(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB
(GAM401) Build a Serverless Mobile Game w/ Cognito, Lambda & DynamoDB
 
Serverless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSServerless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWS
 
AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...
AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...
AWS April Webinar Series - Easily Build and Scale Mobile Apps with AWS Mobile...
 
Building mobile apps on AWS
Building mobile apps on AWSBuilding mobile apps on AWS
Building mobile apps on AWS
 
Building mobile apps on aws
Building mobile apps on awsBuilding mobile apps on aws
Building mobile apps on aws
 
Improve monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsImprove monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile apps
 
Accelerate Your Mobile Development Journey with AWS
Accelerate Your Mobile Development Journey with AWSAccelerate Your Mobile Development Journey with AWS
Accelerate Your Mobile Development Journey with AWS
 
AWS Cloud Kata 2014 | Jakarta - 2-2 Mobile
AWS Cloud Kata 2014 | Jakarta - 2-2 MobileAWS Cloud Kata 2014 | Jakarta - 2-2 Mobile
AWS Cloud Kata 2014 | Jakarta - 2-2 Mobile
 
Serverless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSServerless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWS
 
Building Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit DiublinBuilding Mobile Apps on AWS at Websummit Diublin
Building Mobile Apps on AWS at Websummit Diublin
 
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
 
AWS Mobile Hub + AWS Device Farm
AWS Mobile Hub + AWS Device FarmAWS Mobile Hub + AWS Device Farm
AWS Mobile Hub + AWS Device Farm
 
Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile Services
 
Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile Services
 
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
Build Your Mobile App Faster with AWS Mobile Services (Part 1 - AWS)
 

Mehr von Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mehr von Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Kürzlich hochgeladen

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 

Kürzlich hochgeladen (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 

Build Mobile Apps using AWS SDKs and AWS Mobile Hub

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Olivier Klein 奧樂凱 Solutions Architect, Greater China April 2016 Build Mobile Apps using AWS SDKs and Mobile Hub
  • 2. Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications Manage users and identity providers and sync prefs across devices Securely access cloud resources Test across multiple devices and operating systems Track active users, engagement Run stateless custom code without servers Store user-generated content and share it Deliver content quickly globally Bring users back to your app by sending messages reliably Store and query fast NoSQL data across users and devices Collect real-time event logs and take actions quickly
  • 3. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 4. SDKs Java Python (boto) PHP .NET Ruby Node.js iOS Android Go JavaScript C++
  • 6. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 7. • Authenticates your users • Facebook, Google, Amazon,Twitter, OpenID • Anonymous • Manages the users and synchronize data across multiple devices • Allows secure communication with other AWS services Amazon Cognito Amazon Cognito
  • 8. Initialize the Cognito Client CognitoCachingCredentialsProvider cognitoProvider = new CognitoCachingCredentialsProvider( myActivity.getContext(), // get the context for the current activity "AWS_ACCOUNT_ID", "COGNITO_IDENTITY_POOL_ID", "arn:aws:iam::AWS_ACCOUNT_ID:role/UNAUTHENTICATED_ROLE", "arn:aws:iam::AWS_ACCOUNT_ID:role/AUTHENTICATED_ROLE", Regions.US_EAST_1 ); // Create a service client with the provider AmazonDynamoDB client = new AmazonDynamoDBClient(cognitoProvider);
  • 9. Store and Synchronize Data CognitoSyncManager syncClient = new CognitoSyncManager(myActivity.getContext(), COGNITO_POOL_ID, Regions.YOUR_REGION, cognitoProvider); Dataset dataset = client.openOrCreateDataset("myDataset"); dataset.put("myKey", "my value"); String value = dataset.get("myKey"); dataset.remove("myKey"); dataset.synchronizeOnConnectivity(this, syncCallback);
  • 10. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 11. Control access to your AWS resources • Create users, groups or roles • Fine grained control access control with IAM policies • Control who can do what from where • Permit resource access social identities • Easily add multi factor authentication using hardware tokens or smartphone apps Identity and Access Management (IAM)
  • 12. { "Effect":"Allow", "Action":["s3:*"], "Resource":"*" } { "Effect": "Allow", "Action": ["cognito-sync:*"], "Resource": "*" } { "Effect": "Deny", "Action": ["dynamodb:*"], "Resource": "*" } Allow Actions: All S3 Sync store Operations Resource: All resources within these services Deny Actions: All DDB Operations Resource: All resources Access Policy for IAM Role
  • 13. Allow Actions: S3 Get/Put operations Resource: Only to a specific part of bucket to that identity { "Effect": "Allow”, "Action": ["s3:GetObject","s3:PutObject"], "Resource": ["arn:aws:s3::: myBucket/amazon/myapp/${cognito-identity.amazonaws.com:sub}"] } Allow Actions: DDB Get/Put operations Resource: Only to a specific cells in the database { "Effect": "Allow”, "Action": ["dynamodb:GetItem", "dynamodb:PutItem"], "Resource" : [ "arn:aws:dynamodb:REGION:12345:table/TABLE_NAME”], "Condition": { "ForAllValues:StringEquals”:{ "dynamodb:LeadingKeys": ["${cognito-identity.amazonaws.com:sub}"], "dynamodb:Attributes”: ["Wins","Losses”,"TopScore",”DateTime" ] }, } Access Policy Restriction (Policy Variables)
  • 14. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 15. AWS Device Farm • Test your app on real devices in the AWS cloud • Fully managed and scalable test platform • Many different smartphone and tablet models available • Full built-in test suite • Integration with custom frameworks (e.g. Appium, Calabash etc.) AWS Device Farm
  • 16.
  • 17. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 18. Amazon Mobile Analytics • Allows to collect, visualize and understand your mobile app usage • Scales seamlessly to billions of events per day • You retain full control and ownership of the data Amazon Mobile Analytics
  • 19.
  • 20. Get insights into app specific actions that your users take Examples Track the number of Likes/Shares in a news app Player abort rates per level in a game Number of songs playedin a music app In-app purchase item popularity Custom Events
  • 21. Initialize Mobile Analytics // Within your activity private static MobileAnalyticsManager analytics; // Within your activity onCreate() try { AnalyticsConfig options = new AnalyticsConfig(); options.withAllowsWANDelivery(true); analytics = MobileAnalyticsManager.getOrCreateInstance( getApplicationContext(), "YOU MOBILE ANALYTICS APP ID", Regions.US_EAST_1, cognitoProvider ); } catch(InitializationException ex) { Log.e(this.getClass().getName(), "Failed to initialize Mobile Analytics", ex); }
  • 22. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 23. AWS Lambda • Run your code in the cloud, fully managed and highly-available • Triggered through API calls or state changes in your setup (S3, DynamoDB, SNS, Kinesis) • Scales automatically to match the incoming event rate • Charged per 100ms execution time Amazon Kinesis Amazon Lambda Amazon S3 Amazon DynamoDB Amazon API Gateway Amazon SNS
  • 24. Adding a Lambda Backend to your App Initialize the LambdaFactory and define the Interface for the functions Call synchronize on the dataset Create the Lambda Function lambda = new LambdaInvokerFactory(context, Regions.US_WEST_2, provider); //interface @LambdaFunction(functionName="cloudFunction”) String localFunction(String nameInfo); lambda.localFunction(“Hello From “); // this will output “Hello From Lambda” exports.handler = function(event, context) { context.done(null, event + 'Lambda'); // SUCCESS with message };
  • 25. How to build an even better backend? Back-end logic DatabaseMobile
  • 26. Microservices with API Gateway and Lambda Amazon Lambda Amazon API Gateway Amazon DynamoDB Microservice
  • 27. Amazon API Gateway • Fully managed and scalable RESTful API gateway service • Powered through our content delivery network via our 53 global edge locations • Provides DDoS protection and throttling capabilities • Multiple API stages which you define (e.g. dev, test, prod) AWS Lambda Amazon API Gateway Amazon EC2 AWS API On-prem server
  • 28. When to choose API Gateway vs. Direct SDK? • Amazon API Gateway adds an additional layer between your mobile users and your logic and data stores in order to: • Allow back-end logic to be interchanged without mobile app code modifications • Ability to throttle individual users or requests • Protect against DDoS attacks including counterfeit requests (Layer 7) and SYN floods (Layer 3) • Provides a caching layer for your calls • Enables CORS for all AWS service for web apps
  • 29. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 30. Amazon S3 & Amazon CloudFront • Amazon S3 • Highly available object storage • Designed for 99.999999999% durability • Offers HTTP / HTTPS endpoint to objects • Amazon CloudFront • Content Delivery Network with 54 edge locations across the world • Caches content on edge locations for low latency Amazon S3 Amazon CloudFront
  • 31. // Creating the transfer utility AmazonS3 s3 = new AmazonS3Client(cognitoProvider); TransferUtility transferUtility = new TransferUtility(s3, getApplicationContext()); // Upload file TransferObserver observer = transferUtility.upload(bucket, filename, file); // Download image TransferObserver observer = transferUtility.download(bucket, filename, file); Use Transfer Utility for S3
  • 32. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 33. Amazon SNS Mobile Push Notifications • Amazon SNS is a fully managed, cross-platform mobile push intermediary service • Fully scalable to millions of devices • Allows to create topics (e.g. per geo, interest, usage pattern etc.) Amazon SNS Apple APNS Google GCM Amazon ADM Windows WNS and MPNS Baidu CP Android Phones and Tablets Apple iPhones and iPads Kindle Fire Devices Android Phones and Tablets in China iOS Windows Phone Devices Amazon SNS
  • 34. AmazonSNSClient snsClient = new AmazonSNSClient(); CreatePlatformEndpointRequest request = new CreatePlatformEndpointRequest() .withPlatformApplicationArn(platformApplicationArn) .withToken(deviceToken); //register device CreatePlatformEndpointResult result = snsClient.createPlatformEndpoint(request); Device Registration – Code example
  • 35. var sns = new SNS({ region: ’ap-southeast-1’}); // send message to single device (could also be a topic) var endpointArn = 'arn:aws:sns:ap-southeast- 1:12345678:endpoint/5d3954e1-7d68-365a-80c2-95ae98ae4336'; // Message to send var message = ’New player just joined your game!'; sns.sendMessage(endpointArn, message, function(err, messageId) { if (err) console.log(’Error occured with device %s', endpointArn); }); Send Push Notifications via AWS Lambda
  • 36. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 37. Amazon DynamoDB • Schemaless Data Model • Seamless scalability • No storage or throughput limits • Consistent low latency performance • High durability and availability • Replicated across 3 facilities DynamoDB table items attributes Fully Managed NoSQL Database Service
  • 38. @DynamoDBTable(tableName = ”User") public static class User { private String hash, nickname, avatar; private int score; @DynamoDBHashKey(attributeName = ”hash") public String getHash() { return hash; } public void setHash(String hash) { this.hash = hash; } @DynamoDBAttribute(attributeName=”nickname") public String getNickanme() { return nickname; } ... hash nickname avatar score abce6 Oli4 s3://bkt/av1.jpg 1500 feru64 LoLZ s3://bkt/lolz56.jpg 800 4568c L33t s3://bkt2/cat.png 750 Table: User Object Mapper Example - Class
  • 39. // Create a user object User user = new User(); note.setHash(”abce64”); note.setNickname(”Oli4"); note.setAvatar(”s3://mybucket/av1.jpg"); note.setScore(0); // Save user object to DynamoDB mapper.save(user); // Update score and save user again user.setScore(user.getScore()+100); mapper.save(user); // Load another user User anotherUser = mapper.load(User.class,”asian_tiger_1234”); Object Mapper Example – Store and Update
  • 40. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 41. Stream in Real Time: Amazon Kinesis • Real-Time Data Processing over large distributed streams • Elastic capacity that scales to millions of events per second • React In real-time upon incoming stream events • Reliable stream storage replicated across 3 facilities Amazon Kinesis
  • 42. KinesisRecorder String kinesisDirectory = "YOUR_UNIQUE_DIRECTORY"; KinesisRecorder recorder = new KinesisRecorder( cognitoProvider, Regions.AP_SOUTHEAST_1, getDir(kinesisDirectory, MODE_PRIVATE)); recorder.saveRecord(”Message1".getBytes(),"MyStreamName"); recorder.saveRecord(”Message2".getBytes(),"MyStreamName"); recorder.submitAllRecords();
  • 43. Process and Notify in AWS Lambda exports.handler = function(event, context) { event.Records.forEach(function(record) { payload = new Buffer(record.kinesis.data, 'base64').toString('ascii'); UserEvent event = new UserEvent(payload); if (event.position == TREASURE_BONUS_COORD) { var message = ’You found the special treasure!'; sns.sendMessage(endpointArn, message); } }); context.succeed(); };
  • 44. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB Amazon Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store Content Test across Devices Deliver Content Store Data Record Real-Time EventsRun Business Logic Send Push Notifications
  • 45. Great, AWS has all we need, but it’s a bit complex!
  • 46. AWS Mobile Hub • Allows to build mobile apps within minutes • Single integrated console to use all AWS services for mobile • Automatically provisions all necessary AWS services based on selected features • Automatic code generation for iOS (Objective-C / Swift) and Android • Uses security best practices with AWS IAM
  • 48. Create a project and add features
  • 49.
  • 50.
  • 51. Thank you! Olivier Klein 奧樂凱 Solutions Architect, Greater China