Building Secure and Scalable Mobile Apps on AWS
Total Page:16
File Type:pdf, Size:1020Kb
Building Secure and Scalable Mobile Apps on AWS Dennis Hills Mobile Developer Advocate, Amazon Web Services April 20, 2017 © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Agenda v State of Mobile Apps v Serverless/Microservices (functions) v Overview of AWS Mobile Services v Artificial Intelligence v Build and test your Mobile App on AWS v Questions? Leading mobile apps run on AWS State of Mobile – but also challenges 18 Weeks Average time to build a mobile app 4 MM + Apps Published to global app stores that you need to compete with mindshare 25% Apps abandoned after first use The benefits of a serverless approach Save development time; Host logic shared across apps in the cloud Pay as you scale; Infrastructure costs proportional to your growth Focus on building features; minimize operations efforts Deliver a reliable app experience with high availability and low latency Evolution… Web/API Server TheTHE ANATOMY anatomy OF of “SERVERLESS” serverless Cloud storage Cloud identity Cloud logic and messaging “AWS has what we need, but…it’s complex” 1. Which services should I use? 2. How do I connect them? Example: SDK + Identity provider SDKs + Login screen & integration code = Mobile Backend User Push Content Analytics Identity Notifications Data, Media, Files Application Logic On-Device Testing AWS for Mobile App Development User AuthN and AuthZ Store and share media Amazon Cognito Amazon S3 Amazon IAM (access control) Run server-side logic Deliver media AWS Lambda Amazon CloudFront Amazon API Gateway Synchronize data Send push notifications AWS Mobile SDKs Amazon Cognito (Sync) Your Mobile App Amazon SNS Mobile Push Analyze user behavior Store data Amazon DynamoDB Amazon Pinpoint Amazon RDS AWS Mobile Hub Track retention Accept conversational input Amazon Pinpoint Amazon Lex AWS Mobile Hub Mobile Hub Auto-Provisions Mobile Services AMAZON COGNITO AWS DEVICE FARM AMAZON SNS AWS AMAZON LAMBDA PINPOINT AMAZON AMAZON S3 DYNAMODB AMAZON IDENTITY & ACCESS AMAZON MANAGEMENT CLOUDFRONT AWS Mobile SDKs Swift Xamarin Unity React Native (preview) Objective-C Android Java AWS Mobile Hub features AWS Mobile Hub Quickstart App Working Mobile App project includes: ü Xcode or Android Studio Project Java ü Uses your AWS Resources ü Example Application Code Obj-C ü Helper “Glue” Code ü Software Development Kits Swift ü Developer Integration Instructions AWS Mobile Hub follows best practices Cloud Identity AWS Mobile Hub Demo Introducing AWS Artificial Intelligence Services Amazon Lex Build conversational interfaces using voice and text, powered by the same deep learning technologies as Alexa Amazon Rekognition Deep learning-based image recognition Amazon Polly Turn text into lifelike speech using deep learning Amazon Machine Learning A scalable machine learning service for developers The exploding market for voice and chat bots 2.5 billion messaging app users Over a thousand Alexa skills developed 33% of all customer support interactions still need human interaction Sources: The Economist, KPCB Internet Trends 2016, Accenture – Why AI is the future How bots can make your apps more engaging Simplify complex UX flows Understand user intents better and personalize experiences Automate complex business processes 22 CC BY 2.0: https://www.flickr.com/photos/adactio/14202296106 AWS Device Farm – test on real devices Automated testing Remote access Test your app in parallel against a Gesture, swipe, and interact with large collection of physical devices devices in real time, directly from in the AWS Cloud your web browser Automated Testing Improve the quality of your apps by testing against real devices in the AWS Cloud Your App (native, hybrid, web) Instrumentation XCTest UI Automation XCTest UI UI Automator Remote Access Select a device Interact with the device View historical sessions AWS Device Farm • Android and iOS (Native, hybrid, web) • Scale: Over 300 of unique devices, many instances • Security: Full HW and SW isolation • Flexibility: Support for many popular frameworks • Reports: Results, screenshots, logs, performance, video • Integration: Jenkins, Android Studio, SDKs, CLI • Pay for what you use Pricing $0.17 / device minute (First 250 minutes free) or $250 / device slot / month (Differentiated on Android and iOS) AWS Device Farm Demo Get started at aws.amazon.com/mobile Questions?.