AWS Mobile Services
2015.03.22Amazon Data Service Japan, Solutions Architect Keisuke Nishitani(@Keisuke69)
Twi$erJaws Days
@jawsdays
3
@awscloud_jp
#jawsdays
1
AWSTwi0erJAWS DAYSTwi0er
??
17:00 9:0016:50Tweet
Kindle JAWS T
Mo Band
JAWS T
Step 1
Step 2
Step 3
Jaws DaysOK
JAWS T
! @Keisuke69
! WebEC
ID
Undierentiated Heavy Lifting
ID
Push
/ And More.
AWS Cloud Infrastructure
AWS Mobile Services
Amazon Cognito
Kinesis Connector DynamoDB Mapper S3 Transfer Mgr SQS Client SES Client
()
AWS Mobile SDK, API Endpoints, Management Console
SDK
Amazon Mobile Analytics Amazon SNS Mobile Push
AWS Lambda
ID
Your Mobile App
Amazon Cognito(Identity Broker)
AWS Identity and Access Management
Amazon Cognito (Sync)
Amazon Mobile Analytics
Amazon Mobile Analytics
Amazon S3Transfer Manager
Amazon CloudFront(Device Detection)
Amazon DynamoDB(Object Mapper)
Amazon Kinesis(Recorder)
Amazon SNS Mobile Push
Your Mobile App
AWS Mobile SDK
Amazon Cognito(Identity Broker)
AWS Identity and Access Management
Amazon Cognito (Sync)
Amazon Mobile Analytics
Amazon Mobile Analytics
Amazon S3Transfer Manager
Amazon CloudFront(Device Detection)
Amazon DynamoDB(Object Mapper)
Amazon Kinesis(Recorder)
Amazon SNS Mobile Push
Your Mobile App
AWS Mobile SDK
Amazon Cognito
! ID
ID ID
ID AWS SDK
!
Key/Value
Cognito IdentityAWS
Amazon Cognito (AWS IAM / STS)
Java Python (boto)
PHP
.NET Ruby
iOS Android
JavaScript
JavaScript
Amazon Cognito(Identity Broker)
AWS Identity and Access Management
Amazon Cognito (Sync)
Amazon Mobile Analytics
Amazon Mobile Analytics
Amazon S3Transfer Manager
Amazon CloudFront(Device Detection)
Amazon DynamoDB(Object Mapper)
Amazon Kinesis(Recorder)
Amazon SNS Mobile Push
Your Mobile App
AWS Mobile SDK
Amazon SNSCross-platform
Mobile Push
Internet
Apple APNS
Google GCM
Amazon ADM
Windows WNS and MPNS
Baidu CP
Amazon SNS Mobile Push
! ! 1000
Android Phones and Tablets
Apple iPhones and iPads
Kindle Fire Devices
Android Phones and Tablets in China
iOS
Windows Desktop and Windows Phone Devices
Amazon Cognito(Identity Broker)
AWS Identity and Access Management
Amazon Cognito (Sync)
Amazon Mobile Analytics
Amazon Mobile Analytics
Amazon S3Transfer Manager
Amazon CloudFront(Device Detection)
Amazon DynamoDB(Object Mapper)
Amazon Kinesis(Recorder)
Amazon SNS Mobile Push
Your Mobile App
AWS Mobile SDK
Amazon Mobile Analytics
!
! Amazon Mobile SDK CSVS3/Redshift
! 60 /
! OSAndroid, iOS, FireOS AWS SDK for JavaScript
Amazon Cognito(Identity Broker)
AWS Identity and Access Management
Amazon Cognito (Sync)
Amazon Mobile Analytics
Amazon Mobile Analytics
Amazon S3Transfer Manager
Amazon CloudFront(Device Detection)
Amazon DynamoDB(Object Mapper)
Amazon Kinesis(Recorder)
Amazon SNS Mobile Push
Your Mobile App
AWS Mobile SDK
AWS Mobile SDK
!
!
! Android, iOS, Fire OS, Unity, Xamarin
! Mobile OS
! Amazon DynamoDB Object Mapper Amazon S3 Transfer Manager Amazon Kinesis Recorder
!
DynamoDB ClientAndroid
AWSCredentials credentials = AmazonSharedPreferencesWrapper
.getCredentialsFromSharedPreferences(this.sharedPreferences);
AmazonDynamoDBClient ddb = new AmazonDynamoDBClient(credentials);
DynamoDBMapper mapper = new DynamoDBMapper(ddb);
Android@DynamoDBTable(tableName = "TestUserPereference")
public static class UserPreference {
private int userNo;
private String firstName;
@DynamoDBHashKey(attributeName = "userNo")
public int getUserNo() {
return userNo;
}
public void setUserNo(int userNo) {
this.userNo = userNo;
}
@DynamoDBAttribute(attributeName = "firstName")
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
}
/Android
// UserPreference userPreference = new UserPreference();
userPreference.setUserNo(i);
userPreference.setFirstName(Constants.getRandomName());
userPreference.setLastName(Constants.getRandomName());
mapper.save(userPreference);
// DynamoDBScanExpression scanExpression = new DynamoDBScanExpression();
PaginatedScanList result = mapper.scan(
UserPreference.class,
scanExpression);
S3/Android
//S3 TransferManager TransferManager transferManager = new TransferManager(getCredProvider(this));
// Download download = transferManager.download(BUCKET_NAME, mKey, file);
// Upload upload = transferManager.upload(BUCKET_NAME, fileName, file);
AWS Mobile SDK for Unity
! UnityPlugin .NET
! Developer Preview Amazon Cognito Amazon S3 Amazon DynamoDB Amazon Mobile Analytics
! Unity4.0
AWS Mobile SDK for Xamarin
! XamarinPlugin https://github.com/awslabs/aws-sdk-xamarin
! Amazon Cognito Amazon S3 Amazon DynamoDB Amazon SNS Mobile Push
AWS Lambda
! Compute LambdaAWS
EC2OS
EC2 AWS
S3/ DynamoDB Table Kinesis
! Lambda function JavaScriptNode.js
2-Tier Architecture
2-Tier Architecture
! AWS SDK AWS
!
2-Tier Architecture
2-Tier Architecture
2-Tier Architecture
! EC2*
! EC2
! * EC2
/RSS
1
! DynamoDBS3HTML+JSS3Web
3. FB
Cognito
DynamoDB
S3
1. HTTPS
2. HTMLJS
JavaScriptSDK
4.
2: RSS
! ! DynamoDB
App with AWS Mobile
SDK
JavaScriptSDK
S3
1. HTTPS
2. HTMLJS
Cognito Identity
3. FBGoogleID
Cognito Sync
4. MobileSDK
5. Push/Pull
3
! /DynamoDB! Lambda
1. FB
Cognito
DynamoDBApp with AWS Mobile SDK
2.
4. DynamoDB
3. Lambda function
Lambda
Followers
4
4. DynamoDB-
1. FB
6. Push-
Cognito
Mobile Analytics
DynamoDB
S3
SNS7. Analytics
3.
2. S3
5. SNS
App with AWS Mobile
SDK
!
! EC2
!
2015.06.02-03 Save the Date
Top Related