SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
©2015,	
  Amazon	
  Web	
  Services,	
  Inc.	
  or	
  its	
  affiliates.	
   All	
  rights	
  reserved
Shiva  N
Solutions  Architect
Build  High  Performing  Mobile  Apps,  Faster  with  AWS
What  Our  Mobile  Customers  Have  Told  Us
Problems  developers   face  today
Fragmentation   across  platforms
Sync  scalability   is  extremely  hard
Expensive   to  manage  and  operate
Distracts  them  from  building   core  UX
Managing   unique  user  identities   is  difficult
“Table  stakes”  for  every  app
Undifferentiated  Heavy  Lifting
Developer’s  Mobile  App  Code
User  Identity  Mgmt.  and  Auth
User  Data  Synchronization
Asynchronous  Communication
Active  Devices  Analytics
User  Behavior  Analytics
Engagement  Analytics
Push  Notifications
Event  Triggers
Platform  agnostic  Mobile  Backend
Data  Validation  and  Transformation
File  and  Media  Storage
Shared  Database  Storage
Data  Collection  
And  More….
AWS  Cloud  Infrastructure
What  Our  Mobile  Customers  Have  Told  Us
Developer’s  Mobile  App  Code
User  Identity  Mgmt.  and  Auth
User  Data  Synchronization
Asynchronous  Communication
Active  Devices  Analytics
User  Behavior  Analytics
Engagement  Analytics
Push  Notifications
Event  Triggers
Platform  agnostic  Mobile  Backend
Data  Validation  and  Transformation
File  and  Media  Storage
Shared  Database  Storage
Data  Collection  
And  More….
AWS  Cloud  Infrastructure
Amazon  Cognito
Amazon  Mobile  Analytics
Amazon  SNS  Mobile  Push
Amazon  Lambda
Mobile-­optimized   Connectors
(Kinesis,  S3,  DynamoDB,  SQS)
Amazon  Cognito Amazon  Mobile  Analytics Amazon  SNS  Mobile  Push
Kinesis  RecorderDynamoDB  Mapper S3  Transfer  Mgr SQS  Client SES  Client
AWS  Global  Infrastructure  (Regions,  Availability  Zones,  Edge  Locations)
Core  Building  Block  
Services
Mobile  Optimized  
Connectors
Mobile  Optimized  
Services
Your  Mobile  App,  Game  or  Device  App
AWS  Mobile  SDK,  API  Endpoints,  Management  Console
Compute Storage Networking Analytics Databases
Integrated  SDK
AWS  Mobile  Stack
AWS  Lambda
Lambda  
Functions
λ λ
λ
λ
Fully  Integrated  AWS  Mobile  SDK
• Common  authentication  mechanism  across  
all  services
• Automatically  handle  intermittent  network  
connections  
• Cross-­platform  Support:  Android,  iOS,  Fire  
OS
• Native  SDKs  optimized  for  Mobile  OS,  for  
example,  uses  the  local  offline  caching  
architecture
• Reduced  memory  footprint;;  Pick  and  choose  
the  service  jars  you  need
• Continuously  updated  with  latest  platform  
enhancements
iOS Android JavaScript
Unity Xamarin
Download   the  latest  
versions  of  the  SDKs
Authenticate   users
Integrated  access
Collect  user  behavior
Store  and  share  media
Synchronize   data
AWS  Mobile  SDK
Amazon  Mobile  
Analytics
Deliver  media
Amazon  Cognito  
(Sync)
AWS   Identity  and  
Access   Management
Amazon  Cognito
(Identity  Broker)
Amazon  S3
Transfer  Manager
Amazon  CloudFront
(Device  Detection)
Store  data  in  the  cloud
Amazon  DynamoDB
(Object  Mapper)
Stream  real-­time  data
Amazon  Kinesis
(Recorder)
Call  server  side  logic
AWS   Lambda
Send  push  notifications
Amazon  SNS  
Mobile  Push
Your  
Mobile  
App
Authenticate  Users:  Amazon  Cognito
Amazon  Cognito  
Simplifies  Identity  and  
Access  Management
Securely  access  all  
AWS  services  from  
mobile  device
Cross-­device  and  
cross-­platform  sync
Implement  security  best  
practices
“Your  app  data  is  secure,  available   offline,  and  kept  in  sync  between  devices”
Synchronize  user’s  data  
across  devices  and  
platforms
Manage  users  as  
unique  identities  across  
identity  providers
Or,  Your  Own  
Auth
Identity  
Providers
Unique
IdentitiesJoe Anna Bob
Any  Device
Any  Platform
Any  AWS  
Service
Helps  implement  security  best  
practices
Securely  access  any  AWS  service  from  mobile  
device.  Simplified  interaction  with  AWS  Identity  
and  Access  Management.
Support  Multiple  Log-­In  Providers
Easily  integrate  with  major  log-­in  providers  for  
authentication.
Unique  Users  vs.  Devices
Manage  unique  identities.  Automatically  
recognize  unique  user  across  devices  and  
platforms.
Amazon  Cognito  Identity
Amazon
Mobile Analytics
Amazon
S3
Amazon
DynamoDB
Amazon
Kinesis
Amazon  Cognito  for  Unauthenticated   Identities
Unique  Identifier  for  Your  “Things”
“Headless”  connected  devices  can  also  
securely  access  cloud  services.
Save  Data  to  the  Cloud
Save  app  and  device  data  to  the  cloud  and  
merge  them  after  login
Guest  User  Access
Securely  access  AWS  resources  and  leverage  
app  features  without  the  need  to  create  an  
account  or  logging  in
Visitor
Preferences
Cognito  
Store
Guest
EC2 S3 DynamoDB Kinesis
Amazon  Cognito  Security
Set  granular  access  permissions  on  AWS  
resources
Get  fine-­grained  access  control  to  cloud  
resources.
Safeguard  AWS  Credentials
No  need  to  embed  credentials  in  the  app  
anymore.  Get  least-­privileged  temporary  
credentials.
Helps  implement  security  best  practices
Securely  access  any  AWS  Service.  It  simplifies  
the  interaction  with  Security  Token  Service  and  
removes  the  need  of  Token  Vending  Machine
EC2 S3 DynamoDB Kinesis
Authorize  Users  Securely:  Amazon  Cognito  +  AWS  IAM  +  
Fine-­grained  access  control
Amazon  Cognito  (Identity  Broker)  
Identitypool
Identity  
Providers
Pool  of  identities  that  
share  the  same  trust  policy
Access  
Policy
Access  to  
AWS  
Services
identitypool
Unauthenticated  
Identities
authenticated  
identities
AWS  IAM  Roles
AWS  
Account
Web  Identity  
Federation
S3
DynamoDB
Get Delete Put
Access  Policy  for  the  IAM  Role
{
"Effect":"Allow",
"Action":["s3:*"],
"Resource":"*"
}
{
"Effect": ”Deny",
"Action": ["dynamodb:*"],
"Resource": "*"
}
{
"Effect": "Allow",
"Action": [”cognito-sync:*"],
"Resource": "*"
}
Allow
Actions:
All  S3,  Sync  store  
Operations
Resource:
All  resources  within  
these  services
Deny
Actions:
All  DDB  Operations
Resource:
All  resources
Synchronize  Data  Across  Devices:  Amazon  Cognito  (Sync)
Amazon  Cognito  
Cloud  Save  and  Sync
User  Data  
Storage  and
Sync
Any  Platform
iOS/Android/FireOS
Store  App  Data,  Preferences,  and  State
Save  app  and  device  data  to  the  cloud  and  merge  
them  after  login.
Cross-­Device  Cross-­OS  Sync  
Sync  user  data  and  preferences  across  devices  
with  one  line  of  code.
Work  Offline
Data  always  stored  in  local  SQLite  DB  first.  
Works  seamlessly  when  intermittent  or  no  
connectivity.
k/v  data
Identity  Pool
No  Back  End
Simple  client  SDK  eliminates  need  for  server  
side  code.
Amazon  Cognito  Sync  Data  Model
• Identity	
  Pool:	
  Pool	
  of	
  app	
  users.	
  Can	
  be	
  shared	
  
across	
  apps.
• Identity:	
  An	
  individual	
  user.	
  Consistent	
  across	
  
identity	
  providers.	
  Can	
  be	
  a	
  guest	
  user.
• Dataset:	
  Per	
  user	
  grouping	
  of	
  data.	
  The	
  most	
  
granular	
  level	
  of	
  sync.	
  Up	
  to	
  1	
  MB.
• Record:	
  Key-­‐value	
  pair.
AWS	
  Account
Dataset
IdentityIdentityIdentity
DatasetDataset
Identity	
  
Pool
1:60
1:n
1:20
DatasetDatasetRecord
1:1024
You
Your	
  App
Your	
  App	
  Users
User	
  Data	
  
Container
User	
  Data
Integrating  Amazon  Cognito  Sync  
Functionality  Is  Dead  Simple
Initialize   the  CredentialsProvider   and  CognitoClient
Call  synchronize   on  the  dataset
Create  or  open  the  dataset  and  add  key  values
provider = new CognitoCachingCredentialsProvider (context, AWS_ACCOUNT_ID,
COGNITO_POOL_ID, COGNITO_ROLE_UNAUTH, COGNITO_ROLE_AUTH, Regions.US_EAST_1);
cognito = new CognitoSyncManager (context, Regions.US_EAST_1, provider);
dataset.synchronize(new SyncCallback(){..});
cognito.openOrCreateDataset(datasetName);
dataset.put(key, value);
Integrating  Amazon  Cognito  Sync  
Functionality  Is  Dead  Simple
Initialize   the  AWSCognitoSyncClient
Call  synchronize   on  the  dataset
Create  or  open  the  dataset  and  add  key  values
DataSet *dataset = [syncClient openOrCreateDataSet:@"myDataSet"];
NSString *value = [dataset readStringForKey:@"myKey"];
[dataset putString:@"my value" forKey:@"myKey"];
AWSCognitoSyncClient *syncClient = [[AWSCognitoSyncClient alloc]
initWithConfiguration: configuration];
[dataset synchronize];
iOS
Analyze  User  Behavior:  Amazon  Mobile  Analytics
Amazon  Mobile  Analytics
Scalable  and  generous  
free  tier
Focus  on  metrics  that  
matter.  Usage  reports  
available  within  60  
minutes  of  receiving  data  
from  an  app.
Fast
Scale  to  billions  of  
events  per  day  from  
millions  of  users.
Own  your  data
“Simply  and  cost-­effectively  collect  and  analyze   your  application   usage  data”
Data  collected  are  not  
shared,  aggregated,  or  
reused
Key  Business   Metrics  
(with  one  line  of  code)
1. Monthly  Active  Users  
(MAU)  
2. Daily  Active  Users  
(DAU)  
3. New  Users  
4. Daily  Sessions
5. Sticky  Factor
6. 1-­Day  Retention  
7. Avg.  Revenue   per  DAU  
8. Daily  Paying   Users
9. Avg.  Paying   DAU
Track  Retention
User  retention  is  a  key  
indicator  to  judge  the  
outcome  of  a  marketing  
campaign,  new  feature  
introduction,  UX  changes,  
app  updates,  etc.  
Mobile  Analytics   provide  four  
charts  to  track  daily  or  
weekly  rate  of  returning  
users,  after  first  use  of  the  
app.
Get  behavioral  insights  into  app-­specific  
actions  that  your  users  take.
Reports  provide  a  view  of  how  often  custom  
events  occur.  You  can  add  further  context  
with  attributes  and  metrics  for  each  custom  
event.
Examples
Track  the  number  of  
likes/shares,  per  
article,  in  a  news  app
Understand  player  
abort  rates  per  
level,  in  a  game
Number  of  songs  
played,  per  user  
session,  in  a  music  app
In-­app  item  popularity  
in  a  shopping  app
Track  Custom  Events
Integrating  Mobile  Analytics  is  super  simple
Initialize   the  MobileAnalyticsManager.   That’s  it!  Get  Session  
Activity  in  the  AWS  Management  Console.  
For  Custom  Events  activity  reports,  add  events.
Add  OnResume()  and  OnPause()
private static MobileAnalyticsManager analytics;
analytics = MobileAnalyticsManager.getOrCreateInstance(
this.getApplicationContext(),"yourCompany.yourAppId",
Regions.YOUR_REGION, config, cognitoProvider );
EventClient eventClient = analytics.getEventClient();
MobileAnalyticsEvent visitEvent = eventClient.createEvent("speedSet");
eventClient.recordEvent(visitEvent);
analytics.getSessionClient().resumeSession();
analytics.getSessionClient().pauseSession();
Analytics.getEventClient().submitEvents();
Integrating  Mobile  Analytics  is  super  simple
Initialize   the  AWSMobileAnalytics object.  That’s  it!  Get  Session  
Activity  in  the  AWS  Management  Console.  
Submit  the  event.  If  we  don't  call  submitEvents,  events  
will  automatically   be  submitted  at  periodic   intervals.  
Create  add  Custom  Events
[eventClient submitEvents];
id<AWSMobileAnalyticsEventClient> eventClient =
analytics.eventClient;
id<AWSMobileAnalyticsEvent> level1Event = [eventClient
createEventWithEventType:@"level1Complete"];
AWSMobileAnalytics* analytics = [AWSMobileAnalytics
defaultAWSMobileAnalyticsWithIdentifier:@"someuniqueid"];
iOS
Process  and  Analyze  Your  Mobile  Data  
Export  to  S3 &  Process  Data  Anywhere
mobile
client
Amazon
S3
Amazon  Mobile  
Analytics
Hadoop/Spark
Amazon EMR
Amazon Redshift petabyte-
scale warehouse
Amazon
Glacier
Amazon Redshift
petabyte-scale
warehouse
mobile
client
Amazon
S3
Amazon  Mobile  
Analytics
External  
data
Store  and  Deliver  Media:  Amazon  S3
Amazon  
KinesisAWS  
Mobile  
SDK
Mobile-­Optimized  Connectors  (AWS  Mobile  SDK)
Amazon  S3
Integrated  AWS  Mobile  SDK  
Optimized  for  native  OS
Multipart  upload  media
Fault  tolerant  download
Automatic  retries
Pause,  resume,  cancel  functions
Generic  batching  system
handles  intermittent  network  
connection  
Optimize  battery  utilization
Amazon  
DynamoDB
Amazon  S3  Connector:  Transfer  Manager
S3  Connector
Multipart  upload  media  (photos,  videos,  audio)
Fault  tolerant  download  (e.g.  assets)
No  back  end  required
Automatic  retries
Pause,  resume,  cancel  functions
Optimized  for  native  OS
Amazon  S3  Connector:  Transfer  Manager  in  Android
// Creating the transfer manager
TransferManager = new TransferManager(credentialProvider);
// Upload image
Upload upload = transferManager.upload(BUCKET_NAME, fileName, file);
// Download image
Download download = transferManager.download(BUCKET_NAME, mKey,
file);
// Pause, and Resume
try {
PersistableDownload = download.pause();
//do something if we didn’t abort
} catch(PauseException e) {
//do something if we aborted
}
download = transferManager.resumeDownload(persistableDownload);
Amazon  S3  Connector:  Transfer  Manager  in  iOS
// Creating the transfer manager
self.transferManager = [S3TransferManager new];
self.transferManager.s3 = s3client;
// Upload image
[self.transferManager uploadFile:fileName bucket:bucketName
key:objectName];
// Download image
[self.transferManager downloadFile:fileName bucket:bucketName
key:objectName];
// Pause, Resume, Cancel
[self.transferManager pauseAllTransfers];
[self.transferManager resumeAllTransfers];
[self.transferManager cancelAllTransfers];
Mobile  Backend  as  a  Service  (MBass)
Respond	
  to	
  events	
  in	
  real	
  time
Map	
  local	
  functions	
  to	
  Lambda	
  functions	
  from	
  within	
  the	
  SDK
Target,	
  filter,	
  and	
  route	
  Amazon	
  SNS	
  notifications
Apply	
  custom	
  logic	
  to	
  user	
  preferences	
  and	
  game	
  state
Java	
  support	
  (coming	
  soon),	
  AWS	
  CloudTrail	
  integration,	
  enhanced	
  
metrics	
  and	
  logging	
  via	
  Amazon	
  CloudWatch
S3  event  
notifications
DynamoDB  
Streams
Amazon  
Kinesis  
events
Amazon  
Cognito  
eventsSNS  
events
Custom  
events
AWS	
  Lambda
Adding  a  Lambda  Back  End  to  Your  Mobile  App  
Is  Simple
Initialize   the  LambdaFactory   and  define  the  interface  for  the  functions
Call  synchronize   on  the  dataset
Create/Upload   the  Lambda  function  to  the  AWS  Management  Console
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
};
Mobile  Push  Notifications:  Amazon  SNS
Amazon SNS
Cross-Platform
Mobile Push
Internet
Apple APNS
Google GCM
Amazon ADM
Windows WNS and
MPNS
Baidu CP
With Amazon SNS, developers can send push notifications on multiple platforms
and reach mobile users around the world
New  features:  
Delivery  metrics  via  
CloudWatch
Trigger  Lambda  
functions  from  SNS  
notifications
Amazon  SNS  Mobile  Push
Android Phones and Tablets
Apple iPhones and iPads
Kindle Fire Devices
Android Phones and Tablets in China
iOS
Windows Desktop and Windows Phone
Devices
Now  Using  Amazon  SNS  Mobile  Push
Zero  to  500m+  daily  
push  notifications  
almost  overnight
Highest  available  
reliability   and  speed
Easy  migration
$1  per  million  
mobile  push  deliveries 10m
170m
500m
Day  1 Day  2 Day  3
Daily  SNS  Mobile  Push  
Deliveries  (millions)
…Rising
Photo  Sharing  Mobile  Reference  Architecture
AWS Region
AUTHENTICATED  (ASSUMED  ROLE)
Photo  Sharing
AWS   MOBILE  REFERENCE   ARCHITECTURES
Download  
Photos  &
App  Files
Session  and  Device  Data,  User  Behavior
Social  Content
(Tagging,  Likes,  
Comments,  etc.) Auto  Export
Meta-­data
Image  Manipulation
Lambda  
Function
Invoked
Multi-­part  Upload
User  Login
Auth with  Web  Identity  Token,  
Custom  Identity  Integration
User
Friends
AWS  Mobile  SDK
Session  &  Photo  Metadata
Role  Associated
With  Identity  Pool
Amazon
Lambda
Amazon
CloudFront
Amazon
Mobile  Analytics
Amazon
DynamoDB
Amazon
Cognito
Amazon
IAM Amazon
S3
Image  editing
Amazon
SNS  Mobile  
Push
Amazon
Redshift
Targeted
Mobile  Application  Testing  :  AWS  Device  Farm
Amazon  Mobile  Device  Farm
• Test  on  same  devices  your  customers  use
• Integrate  test  automation  into  you  CI  
workflow
• Choose  from  existing  tests  or  build  your  
own
• Analyze  performance  characteristics  such  
as  memory,  CPU
• Import  Calabash  tests  for  IOS  and  Android
Development/Testing  Process
Develop SCM
commit Automated
Build
trigger Automated
UI  Test
(Simulators)
always
Is
Milestone
?
no
Beta  Deploy
To
Manual  
Testers
Automated
UI  Test
(Device  Farm)
yes
Build  Mobile  Application  Rapidly  :  Mobile  Hub
The  AWS  Mobile  Hub  (Beta)
1.  Single  integrated  console
2.  Pre-­built  features
3.  Auto-­provisioned   services
4.  Auto-­generated   app
Result:  Build  Apps  on  AWS  in  Minutes
Create  a  Project  and  Add  Features
AMAZON COGNITO
AWS DEVICE FARM
AMAZON SNS
AWS MOBILE HUB
AMAZON MOBILE
ANALYTICS
AMAZON S3
AMAZON
CLOUDFRONT
AWS LAMBDA
Auto-­Provisions  Mobile  Services
Thank  You

Weitere ähnliche Inhalte

Was ist angesagt?

Addressing Amazon Inspector Assessment Findings - September 2016 Webinar Series
Addressing Amazon Inspector Assessment Findings - September 2016 Webinar SeriesAddressing Amazon Inspector Assessment Findings - September 2016 Webinar Series
Addressing Amazon Inspector Assessment Findings - September 2016 Webinar Series
Amazon Web Services
 

Was ist angesagt? (20)

AWS Services Overview - September 2016 Webinar Series
AWS Services Overview - September 2016 Webinar SeriesAWS Services Overview - September 2016 Webinar Series
AWS Services Overview - September 2016 Webinar Series
 
Your APIs can be soft and fluffy
Your APIs can be soft and fluffyYour APIs can be soft and fluffy
Your APIs can be soft and fluffy
 
Building Secure Mobile APIs
Building Secure Mobile APIsBuilding Secure Mobile APIs
Building Secure Mobile APIs
 
Continuous Integration e Delivery per (r)innovare lo sviluppo software e la g...
Continuous Integration e Delivery per (r)innovare lo sviluppo software e la g...Continuous Integration e Delivery per (r)innovare lo sviluppo software e la g...
Continuous Integration e Delivery per (r)innovare lo sviluppo software e la g...
 
Building a Development Workflow for Serverless Applications - March 2017 AWS ...
Building a Development Workflow for Serverless Applications - March 2017 AWS ...Building a Development Workflow for Serverless Applications - March 2017 AWS ...
Building a Development Workflow for Serverless Applications - March 2017 AWS ...
 
如何快速開發與測試App
如何快速開發與測試App如何快速開發與測試App
如何快速開發與測試App
 
Getting Started with Cognito User Pools - September Webinar Series
Getting Started with Cognito User Pools - September Webinar SeriesGetting Started with Cognito User Pools - September Webinar Series
Getting Started with Cognito User Pools - September Webinar Series
 
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
 
Building Serverless Chat Bots - AWS August Webinar Series
Building Serverless Chat Bots - AWS August Webinar SeriesBuilding Serverless Chat Bots - AWS August Webinar Series
Building Serverless Chat Bots - AWS August Webinar Series
 
AWS re:Invent 2016: Deep Dive: Building and Delivering Mobile Apps for the En...
AWS re:Invent 2016: Deep Dive: Building and Delivering Mobile Apps for the En...AWS re:Invent 2016: Deep Dive: Building and Delivering Mobile Apps for the En...
AWS re:Invent 2016: Deep Dive: Building and Delivering Mobile Apps for the En...
 
Securing Serverless Architectures - Pop-up Loft TLV 2017
Securing Serverless Architectures - Pop-up Loft TLV 2017Securing Serverless Architectures - Pop-up Loft TLV 2017
Securing Serverless Architectures - Pop-up Loft TLV 2017
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
Deep Dive on Amazon Cognito - DevDay Los Angeles 2017
 
應用程式迅速開發與串連廣大用戶要素
應用程式迅速開發與串連廣大用戶要素應用程式迅速開發與串連廣大用戶要素
應用程式迅速開發與串連廣大用戶要素
 
Intro to AWS Developer Tools feat. AWS Codestar, and AWS SDKs & Developer Res...
Intro to AWS Developer Tools feat. AWS Codestar, and AWS SDKs & Developer Res...Intro to AWS Developer Tools feat. AWS Codestar, and AWS SDKs & Developer Res...
Intro to AWS Developer Tools feat. AWS Codestar, and AWS SDKs & Developer Res...
 
Srv204 Getting Started with AWS IoT
Srv204 Getting Started with AWS IoTSrv204 Getting Started with AWS IoT
Srv204 Getting Started with AWS IoT
 
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
 
Serverless Applications on AWS
Serverless Applications on AWSServerless Applications on AWS
Serverless Applications on AWS
 
Building End to end IoT solutions
Building End to end IoT solutionsBuilding End to end IoT solutions
Building End to end IoT solutions
 
Addressing Amazon Inspector Assessment Findings - September 2016 Webinar Series
Addressing Amazon Inspector Assessment Findings - September 2016 Webinar SeriesAddressing Amazon Inspector Assessment Findings - September 2016 Webinar Series
Addressing Amazon Inspector Assessment Findings - September 2016 Webinar Series
 

Andere mochten auch

Andere mochten auch (18)

Mobile on AWS
Mobile on AWSMobile on AWS
Mobile on AWS
 
Amazon Cognito + Lambda + S3 + IAM
Amazon Cognito + Lambda + S3 + IAM Amazon Cognito + Lambda + S3 + IAM
Amazon Cognito + Lambda + S3 + IAM
 
(MBL307) How Mobile Businesses and Enterprises Use Amazon SNS
(MBL307) How Mobile Businesses and Enterprises Use Amazon SNS(MBL307) How Mobile Businesses and Enterprises Use Amazon SNS
(MBL307) How Mobile Businesses and Enterprises Use Amazon SNS
 
Leveraging Elastic Web Scale Computing with AWS
 Leveraging Elastic Web Scale Computing with AWS Leveraging Elastic Web Scale Computing with AWS
Leveraging Elastic Web Scale Computing with AWS
 
Application Delivery Patterns
Application Delivery PatternsApplication Delivery Patterns
Application Delivery Patterns
 
Event driven infrastructure
Event driven infrastructureEvent driven infrastructure
Event driven infrastructure
 
Innovation at Scale - Top 10 AWS questions when you start
Innovation at Scale - Top 10 AWS questions when you startInnovation at Scale - Top 10 AWS questions when you start
Innovation at Scale - Top 10 AWS questions when you start
 
ECS and ECR deep dive
ECS and ECR deep diveECS and ECR deep dive
ECS and ECR deep dive
 
AWS Tagging Strategy
AWS Tagging StrategyAWS Tagging Strategy
AWS Tagging Strategy
 
AWS Security and SecOps
AWS Security and SecOpsAWS Security and SecOps
AWS Security and SecOps
 
DevOps, Common use cases, Architectures, Best Practices
DevOps, Common use cases, Architectures, Best PracticesDevOps, Common use cases, Architectures, Best Practices
DevOps, Common use cases, Architectures, Best Practices
 
DevOps and AWS
DevOps and AWSDevOps and AWS
DevOps and AWS
 
Build Mobile Apps using AWS SDKs and AWS Mobile Hub
Build Mobile Apps using AWS SDKs and AWS Mobile HubBuild Mobile Apps using AWS SDKs and AWS Mobile Hub
Build Mobile Apps using AWS SDKs and AWS Mobile Hub
 
AWS EC2 and ELB troubleshooting
AWS EC2 and ELB troubleshootingAWS EC2 and ELB troubleshooting
AWS EC2 and ELB troubleshooting
 
State of Union - Containerz
State of Union - ContainerzState of Union - Containerz
State of Union - Containerz
 
AWS + Puppet = Dynamic Scale
AWS + Puppet = Dynamic ScaleAWS + Puppet = Dynamic Scale
AWS + Puppet = Dynamic Scale
 
Pets, Cattle, Rabbits and Microbes
Pets, Cattle, Rabbits and Microbes Pets, Cattle, Rabbits and Microbes
Pets, Cattle, Rabbits and Microbes
 
Build Your Mobile App Faster with AWS Mobile Services (Cognito, Lambda, SNS, ...
Build Your Mobile App Faster with AWS Mobile Services (Cognito, Lambda, SNS, ...Build Your Mobile App Faster with AWS Mobile Services (Cognito, Lambda, SNS, ...
Build Your Mobile App Faster with AWS Mobile Services (Cognito, Lambda, SNS, ...
 

Ähnlich wie Build high performing mobile apps, faster with AWS

Ähnlich wie Build high performing mobile apps, faster with AWS (20)

(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
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile Apps
 
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
 
Building Cloud-Powered Mobile Apps
Building Cloud-Powered Mobile AppsBuilding Cloud-Powered Mobile Apps
Building Cloud-Powered Mobile Apps
 
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
 
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
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile Apps
 
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)
 
(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...
 
(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
 
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...
 
Build and Deploy Your Mobile Games
Build and Deploy Your Mobile Games Build and Deploy Your Mobile Games
Build and Deploy Your Mobile Games
 
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
 
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 Services & SDK Introduction & Demo
AWS Mobile Services & SDK Introduction & DemoAWS Mobile Services & SDK Introduction & Demo
AWS Mobile Services & SDK Introduction & Demo
 
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
 
Amazon Cognito
Amazon CognitoAmazon Cognito
Amazon Cognito
 
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
 

Mehr von Shiva Narayanaswamy (7)

AWS Connectivity, VPC Design and Security Pro Tips
AWS Connectivity, VPC Design and Security Pro TipsAWS Connectivity, VPC Design and Security Pro Tips
AWS Connectivity, VPC Design and Security Pro Tips
 
Dev/Test Environment Provisioning and Management on AWS
Dev/Test Environment Provisioning and Management on AWSDev/Test Environment Provisioning and Management on AWS
Dev/Test Environment Provisioning and Management on AWS
 
Application Lifecycle Management and Event Driven Programming on AWS
Application Lifecycle Management and Event Driven Programming on AWSApplication Lifecycle Management and Event Driven Programming on AWS
Application Lifecycle Management and Event Driven Programming on AWS
 
Leveraging elastic web scale computing with AWS
 Leveraging elastic web scale computing with AWS Leveraging elastic web scale computing with AWS
Leveraging elastic web scale computing with AWS
 
Running Hybrid Cloud Patterns on AWS
Running Hybrid Cloud Patterns on AWSRunning Hybrid Cloud Patterns on AWS
Running Hybrid Cloud Patterns on AWS
 
Continuous delivery and deployment on AWS
Continuous delivery and deployment on AWSContinuous delivery and deployment on AWS
Continuous delivery and deployment on AWS
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
 

Kürzlich hochgeladen

VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
ydyuyu
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Chandigarh Call girls 9053900678 Call girls in Chandigarh
 
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
nirzagarg
 
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
@Chandigarh #call #Girls 9053900678 @Call #Girls in @Punjab 9053900678
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Kürzlich hochgeladen (20)

Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirt
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort ServiceBusty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
Busty Desi⚡Call Girls in Vasundhara Ghaziabad >༒8448380779 Escort Service
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck Microsoft
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
 
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
 
Al Barsha Night Partner +0567686026 Call Girls Dubai
Al Barsha Night Partner +0567686026 Call Girls  DubaiAl Barsha Night Partner +0567686026 Call Girls  Dubai
Al Barsha Night Partner +0567686026 Call Girls Dubai
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts ServiceReal Escorts in Al Nahda +971524965298 Dubai Escorts Service
Real Escorts in Al Nahda +971524965298 Dubai Escorts Service
 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
 

Build high performing mobile apps, faster with AWS

  • 1. ©2015,  Amazon  Web  Services,  Inc.  or  its  affiliates.   All  rights  reserved Shiva  N Solutions  Architect Build  High  Performing  Mobile  Apps,  Faster  with  AWS
  • 2. What  Our  Mobile  Customers  Have  Told  Us Problems  developers   face  today Fragmentation   across  platforms Sync  scalability   is  extremely  hard Expensive   to  manage  and  operate Distracts  them  from  building   core  UX Managing   unique  user  identities   is  difficult “Table  stakes”  for  every  app Undifferentiated  Heavy  Lifting Developer’s  Mobile  App  Code User  Identity  Mgmt.  and  Auth User  Data  Synchronization Asynchronous  Communication Active  Devices  Analytics User  Behavior  Analytics Engagement  Analytics Push  Notifications Event  Triggers Platform  agnostic  Mobile  Backend Data  Validation  and  Transformation File  and  Media  Storage Shared  Database  Storage Data  Collection   And  More…. AWS  Cloud  Infrastructure
  • 3. What  Our  Mobile  Customers  Have  Told  Us Developer’s  Mobile  App  Code User  Identity  Mgmt.  and  Auth User  Data  Synchronization Asynchronous  Communication Active  Devices  Analytics User  Behavior  Analytics Engagement  Analytics Push  Notifications Event  Triggers Platform  agnostic  Mobile  Backend Data  Validation  and  Transformation File  and  Media  Storage Shared  Database  Storage Data  Collection   And  More…. AWS  Cloud  Infrastructure Amazon  Cognito Amazon  Mobile  Analytics Amazon  SNS  Mobile  Push Amazon  Lambda Mobile-­optimized   Connectors (Kinesis,  S3,  DynamoDB,  SQS)
  • 4. Amazon  Cognito Amazon  Mobile  Analytics Amazon  SNS  Mobile  Push Kinesis  RecorderDynamoDB  Mapper S3  Transfer  Mgr SQS  Client SES  Client AWS  Global  Infrastructure  (Regions,  Availability  Zones,  Edge  Locations) Core  Building  Block   Services Mobile  Optimized   Connectors Mobile  Optimized   Services Your  Mobile  App,  Game  or  Device  App AWS  Mobile  SDK,  API  Endpoints,  Management  Console Compute Storage Networking Analytics Databases Integrated  SDK AWS  Mobile  Stack AWS  Lambda Lambda   Functions λ λ λ λ
  • 5. Fully  Integrated  AWS  Mobile  SDK • Common  authentication  mechanism  across   all  services • Automatically  handle  intermittent  network   connections   • Cross-­platform  Support:  Android,  iOS,  Fire   OS • Native  SDKs  optimized  for  Mobile  OS,  for   example,  uses  the  local  offline  caching   architecture • Reduced  memory  footprint;;  Pick  and  choose   the  service  jars  you  need • Continuously  updated  with  latest  platform   enhancements iOS Android JavaScript Unity Xamarin Download   the  latest   versions  of  the  SDKs
  • 6. Authenticate   users Integrated  access Collect  user  behavior Store  and  share  media Synchronize   data AWS  Mobile  SDK Amazon  Mobile   Analytics Deliver  media Amazon  Cognito   (Sync) AWS   Identity  and   Access   Management Amazon  Cognito (Identity  Broker) Amazon  S3 Transfer  Manager Amazon  CloudFront (Device  Detection) Store  data  in  the  cloud Amazon  DynamoDB (Object  Mapper) Stream  real-­time  data Amazon  Kinesis (Recorder) Call  server  side  logic AWS   Lambda Send  push  notifications Amazon  SNS   Mobile  Push Your   Mobile   App
  • 8. Amazon  Cognito   Simplifies  Identity  and   Access  Management Securely  access  all   AWS  services  from   mobile  device Cross-­device  and   cross-­platform  sync Implement  security  best   practices “Your  app  data  is  secure,  available   offline,  and  kept  in  sync  between  devices” Synchronize  user’s  data   across  devices  and   platforms Manage  users  as   unique  identities  across   identity  providers Or,  Your  Own   Auth
  • 9. Identity   Providers Unique IdentitiesJoe Anna Bob Any  Device Any  Platform Any  AWS   Service Helps  implement  security  best   practices Securely  access  any  AWS  service  from  mobile   device.  Simplified  interaction  with  AWS  Identity   and  Access  Management. Support  Multiple  Log-­In  Providers Easily  integrate  with  major  log-­in  providers  for   authentication. Unique  Users  vs.  Devices Manage  unique  identities.  Automatically   recognize  unique  user  across  devices  and   platforms. Amazon  Cognito  Identity Amazon Mobile Analytics Amazon S3 Amazon DynamoDB Amazon Kinesis
  • 10. Amazon  Cognito  for  Unauthenticated   Identities Unique  Identifier  for  Your  “Things” “Headless”  connected  devices  can  also   securely  access  cloud  services. Save  Data  to  the  Cloud Save  app  and  device  data  to  the  cloud  and   merge  them  after  login Guest  User  Access Securely  access  AWS  resources  and  leverage   app  features  without  the  need  to  create  an   account  or  logging  in Visitor Preferences Cognito   Store Guest EC2 S3 DynamoDB Kinesis
  • 11. Amazon  Cognito  Security Set  granular  access  permissions  on  AWS   resources Get  fine-­grained  access  control  to  cloud   resources. Safeguard  AWS  Credentials No  need  to  embed  credentials  in  the  app   anymore.  Get  least-­privileged  temporary   credentials. Helps  implement  security  best  practices Securely  access  any  AWS  Service.  It  simplifies   the  interaction  with  Security  Token  Service  and   removes  the  need  of  Token  Vending  Machine EC2 S3 DynamoDB Kinesis
  • 12. Authorize  Users  Securely:  Amazon  Cognito  +  AWS  IAM  +   Fine-­grained  access  control
  • 13. Amazon  Cognito  (Identity  Broker)   Identitypool Identity   Providers Pool  of  identities  that   share  the  same  trust  policy Access   Policy Access  to   AWS   Services identitypool Unauthenticated   Identities authenticated   identities AWS  IAM  Roles AWS   Account Web  Identity   Federation S3 DynamoDB Get Delete Put
  • 14. Access  Policy  for  the  IAM  Role { "Effect":"Allow", "Action":["s3:*"], "Resource":"*" } { "Effect": ”Deny", "Action": ["dynamodb:*"], "Resource": "*" } { "Effect": "Allow", "Action": [”cognito-sync:*"], "Resource": "*" } Allow Actions: All  S3,  Sync  store   Operations Resource: All  resources  within   these  services Deny Actions: All  DDB  Operations Resource: All  resources
  • 15. Synchronize  Data  Across  Devices:  Amazon  Cognito  (Sync)
  • 16. Amazon  Cognito   Cloud  Save  and  Sync User  Data   Storage  and Sync Any  Platform iOS/Android/FireOS Store  App  Data,  Preferences,  and  State Save  app  and  device  data  to  the  cloud  and  merge   them  after  login. Cross-­Device  Cross-­OS  Sync   Sync  user  data  and  preferences  across  devices   with  one  line  of  code. Work  Offline Data  always  stored  in  local  SQLite  DB  first.   Works  seamlessly  when  intermittent  or  no   connectivity. k/v  data Identity  Pool No  Back  End Simple  client  SDK  eliminates  need  for  server   side  code.
  • 17. Amazon  Cognito  Sync  Data  Model • Identity  Pool:  Pool  of  app  users.  Can  be  shared   across  apps. • Identity:  An  individual  user.  Consistent  across   identity  providers.  Can  be  a  guest  user. • Dataset:  Per  user  grouping  of  data.  The  most   granular  level  of  sync.  Up  to  1  MB. • Record:  Key-­‐value  pair. AWS  Account Dataset IdentityIdentityIdentity DatasetDataset Identity   Pool 1:60 1:n 1:20 DatasetDatasetRecord 1:1024 You Your  App Your  App  Users User  Data   Container User  Data
  • 18. Integrating  Amazon  Cognito  Sync   Functionality  Is  Dead  Simple Initialize   the  CredentialsProvider   and  CognitoClient Call  synchronize   on  the  dataset Create  or  open  the  dataset  and  add  key  values provider = new CognitoCachingCredentialsProvider (context, AWS_ACCOUNT_ID, COGNITO_POOL_ID, COGNITO_ROLE_UNAUTH, COGNITO_ROLE_AUTH, Regions.US_EAST_1); cognito = new CognitoSyncManager (context, Regions.US_EAST_1, provider); dataset.synchronize(new SyncCallback(){..}); cognito.openOrCreateDataset(datasetName); dataset.put(key, value);
  • 19. Integrating  Amazon  Cognito  Sync   Functionality  Is  Dead  Simple Initialize   the  AWSCognitoSyncClient Call  synchronize   on  the  dataset Create  or  open  the  dataset  and  add  key  values DataSet *dataset = [syncClient openOrCreateDataSet:@"myDataSet"]; NSString *value = [dataset readStringForKey:@"myKey"]; [dataset putString:@"my value" forKey:@"myKey"]; AWSCognitoSyncClient *syncClient = [[AWSCognitoSyncClient alloc] initWithConfiguration: configuration]; [dataset synchronize]; iOS
  • 20. Analyze  User  Behavior:  Amazon  Mobile  Analytics
  • 21. Amazon  Mobile  Analytics Scalable  and  generous   free  tier Focus  on  metrics  that   matter.  Usage  reports   available  within  60   minutes  of  receiving  data   from  an  app. Fast Scale  to  billions  of   events  per  day  from   millions  of  users. Own  your  data “Simply  and  cost-­effectively  collect  and  analyze   your  application   usage  data” Data  collected  are  not   shared,  aggregated,  or   reused
  • 22. Key  Business   Metrics   (with  one  line  of  code) 1. Monthly  Active  Users   (MAU)   2. Daily  Active  Users   (DAU)   3. New  Users   4. Daily  Sessions 5. Sticky  Factor 6. 1-­Day  Retention   7. Avg.  Revenue   per  DAU   8. Daily  Paying   Users 9. Avg.  Paying   DAU
  • 23. Track  Retention User  retention  is  a  key   indicator  to  judge  the   outcome  of  a  marketing   campaign,  new  feature   introduction,  UX  changes,   app  updates,  etc.   Mobile  Analytics   provide  four   charts  to  track  daily  or   weekly  rate  of  returning   users,  after  first  use  of  the   app.
  • 24. Get  behavioral  insights  into  app-­specific   actions  that  your  users  take. Reports  provide  a  view  of  how  often  custom   events  occur.  You  can  add  further  context   with  attributes  and  metrics  for  each  custom   event. Examples Track  the  number  of   likes/shares,  per   article,  in  a  news  app Understand  player   abort  rates  per   level,  in  a  game Number  of  songs   played,  per  user   session,  in  a  music  app In-­app  item  popularity   in  a  shopping  app Track  Custom  Events
  • 25. Integrating  Mobile  Analytics  is  super  simple Initialize   the  MobileAnalyticsManager.   That’s  it!  Get  Session   Activity  in  the  AWS  Management  Console.   For  Custom  Events  activity  reports,  add  events. Add  OnResume()  and  OnPause() private static MobileAnalyticsManager analytics; analytics = MobileAnalyticsManager.getOrCreateInstance( this.getApplicationContext(),"yourCompany.yourAppId", Regions.YOUR_REGION, config, cognitoProvider ); EventClient eventClient = analytics.getEventClient(); MobileAnalyticsEvent visitEvent = eventClient.createEvent("speedSet"); eventClient.recordEvent(visitEvent); analytics.getSessionClient().resumeSession(); analytics.getSessionClient().pauseSession(); Analytics.getEventClient().submitEvents();
  • 26. Integrating  Mobile  Analytics  is  super  simple Initialize   the  AWSMobileAnalytics object.  That’s  it!  Get  Session   Activity  in  the  AWS  Management  Console.   Submit  the  event.  If  we  don't  call  submitEvents,  events   will  automatically   be  submitted  at  periodic   intervals.   Create  add  Custom  Events [eventClient submitEvents]; id<AWSMobileAnalyticsEventClient> eventClient = analytics.eventClient; id<AWSMobileAnalyticsEvent> level1Event = [eventClient createEventWithEventType:@"level1Complete"]; AWSMobileAnalytics* analytics = [AWSMobileAnalytics defaultAWSMobileAnalyticsWithIdentifier:@"someuniqueid"]; iOS
  • 27. Process  and  Analyze  Your  Mobile  Data  
  • 28. Export  to  S3 &  Process  Data  Anywhere mobile client Amazon S3 Amazon  Mobile   Analytics Hadoop/Spark Amazon EMR Amazon Redshift petabyte- scale warehouse Amazon Glacier
  • 30. Store  and  Deliver  Media:  Amazon  S3
  • 31. Amazon   KinesisAWS   Mobile   SDK Mobile-­Optimized  Connectors  (AWS  Mobile  SDK) Amazon  S3 Integrated  AWS  Mobile  SDK   Optimized  for  native  OS Multipart  upload  media Fault  tolerant  download Automatic  retries Pause,  resume,  cancel  functions Generic  batching  system handles  intermittent  network   connection   Optimize  battery  utilization Amazon   DynamoDB
  • 32. Amazon  S3  Connector:  Transfer  Manager S3  Connector Multipart  upload  media  (photos,  videos,  audio) Fault  tolerant  download  (e.g.  assets) No  back  end  required Automatic  retries Pause,  resume,  cancel  functions Optimized  for  native  OS
  • 33. Amazon  S3  Connector:  Transfer  Manager  in  Android // Creating the transfer manager TransferManager = new TransferManager(credentialProvider); // Upload image Upload upload = transferManager.upload(BUCKET_NAME, fileName, file); // Download image Download download = transferManager.download(BUCKET_NAME, mKey, file); // Pause, and Resume try { PersistableDownload = download.pause(); //do something if we didn’t abort } catch(PauseException e) { //do something if we aborted } download = transferManager.resumeDownload(persistableDownload);
  • 34. Amazon  S3  Connector:  Transfer  Manager  in  iOS // Creating the transfer manager self.transferManager = [S3TransferManager new]; self.transferManager.s3 = s3client; // Upload image [self.transferManager uploadFile:fileName bucket:bucketName key:objectName]; // Download image [self.transferManager downloadFile:fileName bucket:bucketName key:objectName]; // Pause, Resume, Cancel [self.transferManager pauseAllTransfers]; [self.transferManager resumeAllTransfers]; [self.transferManager cancelAllTransfers];
  • 35. Mobile  Backend  as  a  Service  (MBass)
  • 36. Respond  to  events  in  real  time Map  local  functions  to  Lambda  functions  from  within  the  SDK Target,  filter,  and  route  Amazon  SNS  notifications Apply  custom  logic  to  user  preferences  and  game  state Java  support  (coming  soon),  AWS  CloudTrail  integration,  enhanced   metrics  and  logging  via  Amazon  CloudWatch S3  event   notifications DynamoDB   Streams Amazon   Kinesis   events Amazon   Cognito   eventsSNS   events Custom   events AWS  Lambda
  • 37. Adding  a  Lambda  Back  End  to  Your  Mobile  App   Is  Simple Initialize   the  LambdaFactory   and  define  the  interface  for  the  functions Call  synchronize   on  the  dataset Create/Upload   the  Lambda  function  to  the  AWS  Management  Console 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 };
  • 39. Amazon SNS Cross-Platform Mobile Push Internet Apple APNS Google GCM Amazon ADM Windows WNS and MPNS Baidu CP With Amazon SNS, developers can send push notifications on multiple platforms and reach mobile users around the world New  features:   Delivery  metrics  via   CloudWatch Trigger  Lambda   functions  from  SNS   notifications Amazon  SNS  Mobile  Push Android Phones and Tablets Apple iPhones and iPads Kindle Fire Devices Android Phones and Tablets in China iOS Windows Desktop and Windows Phone Devices
  • 40. Now  Using  Amazon  SNS  Mobile  Push Zero  to  500m+  daily   push  notifications   almost  overnight Highest  available   reliability   and  speed Easy  migration $1  per  million   mobile  push  deliveries 10m 170m 500m Day  1 Day  2 Day  3 Daily  SNS  Mobile  Push   Deliveries  (millions) …Rising
  • 41. Photo  Sharing  Mobile  Reference  Architecture
  • 42. AWS Region AUTHENTICATED  (ASSUMED  ROLE) Photo  Sharing AWS   MOBILE  REFERENCE   ARCHITECTURES Download   Photos  & App  Files Session  and  Device  Data,  User  Behavior Social  Content (Tagging,  Likes,   Comments,  etc.) Auto  Export Meta-­data Image  Manipulation Lambda   Function Invoked Multi-­part  Upload User  Login Auth with  Web  Identity  Token,   Custom  Identity  Integration User Friends AWS  Mobile  SDK Session  &  Photo  Metadata Role  Associated With  Identity  Pool Amazon Lambda Amazon CloudFront Amazon Mobile  Analytics Amazon DynamoDB Amazon Cognito Amazon IAM Amazon S3 Image  editing Amazon SNS  Mobile   Push Amazon Redshift Targeted
  • 43. Mobile  Application  Testing  :  AWS  Device  Farm
  • 44. Amazon  Mobile  Device  Farm • Test  on  same  devices  your  customers  use • Integrate  test  automation  into  you  CI   workflow • Choose  from  existing  tests  or  build  your   own • Analyze  performance  characteristics  such   as  memory,  CPU • Import  Calabash  tests  for  IOS  and  Android
  • 45. Development/Testing  Process Develop SCM commit Automated Build trigger Automated UI  Test (Simulators) always Is Milestone ? no Beta  Deploy To Manual   Testers Automated UI  Test (Device  Farm) yes
  • 46. Build  Mobile  Application  Rapidly  :  Mobile  Hub
  • 47. The  AWS  Mobile  Hub  (Beta) 1.  Single  integrated  console 2.  Pre-­built  features 3.  Auto-­provisioned   services 4.  Auto-­generated   app Result:  Build  Apps  on  AWS  in  Minutes
  • 48. Create  a  Project  and  Add  Features
  • 49. AMAZON COGNITO AWS DEVICE FARM AMAZON SNS AWS MOBILE HUB AMAZON MOBILE ANALYTICS AMAZON S3 AMAZON CLOUDFRONT AWS LAMBDA Auto-­Provisions  Mobile  Services