Details

Amazon Web Services for Mobile Developers


Amazon Web Services for Mobile Developers

Building Apps with AWS
1. Aufl.

von: Abhishek Mishra

CHF 46.00

Verlag: Wiley
Format: EPUB
Veröffentl.: 17.10.2017
ISBN/EAN: 9781119377863
Sprache: englisch
Anzahl Seiten: 792

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

<b>A practical, real-world introduction to AWS tools and concepts</b> <p><i>Amazon Web Services for Mobile Developers: Building Apps with AWS</i> presents a professional view of cloud computing and AWS for experienced iOS/Android developers and technical/solution architects. Cloud computing is a rapidly expanding ecosystem, and working professionals need a practical resource to bring them up-to-date on tools that are rapidly becoming indispensable; this book helps expand your skill set by introducing you to AWS offerings that can make your job easier, with a focus on real-world application. Author and mobile applications developer Abhishek Mishra shows you how to create IAM accounts and try out some of the most popular services, including EC2, Lambda, Mobile Analytics, Device Farm, and more. You'll build a chat application in both Swift (iOS) and Java (Andoid), running completely off AWS Infrastructure to explore SDK installation, Xcode, Cognito authentication, DynamoDB, Amazon SNA Notifications, and other useful tools. By actually using the tools as you learn about them, you develop a more intuitive understanding that feels less like a shift and more like a streamlined integration. <p>If you have prior experience with Swift or Java and a solid knowledge of web services, this book can help you quickly take your skills to the next level with a practical approach to learning that translates easily into real-world use. <ul> <li>Understand the key concepts of AWS as applied to both iOS and Android developers</li> <li>Explore major AWS offerings for mobile developers, including DynamoDB, RDS, EC2, SNS, Cognito, and more</li> <li>Learn what people are talking about when they use buzzwords like PaaS, IaaS, SaaS, and APaaS</li> <li>Work through explanations by building apps that tie into the AWS ecosystem</li> </ul> <p>Any job is easier with the right tools, and <i>Amazon Web Services for Mobile Developers: Building Apps with AWS</i> gets you acquainted with an ever-expanding toolkit for mobile app development.
<p>Introduction xix</p> <p><b>Part I Introduction to Amazon Web Services 1</b></p> <p><b>Chapter 1 Introduction to Cloud Computing and Amazon Web Services 3</b></p> <p>What Is Cloud Computing? 4</p> <p>Cloud Service Models 5</p> <p>Cloud Deployment Models 7</p> <p>The AWS Ecosystem 7</p> <p>Sign Up for an AWS Free Tier Account 10</p> <p>Step 1: Contact Information 10</p> <p>Step 2: Payment Information 12</p> <p>Step 3: Identity Verification 14</p> <p>Step 4: Support Plan Selection 16</p> <p>Step 5: Confirmation 17</p> <p>Summary 17</p> <p><b>Chapter 2 Regions, Availability Zones, and Edge Locations 19</b></p> <p>Regions and Availability Zones 20</p> <p>Edge Locations 22</p> <p>Accessing AWS 24</p> <p>The AWS Management Console 25</p> <p>Summary 31</p> <p><b>Chapter 3 AWS Identity and Access Management 33</b></p> <p>Key Concepts 34</p> <p>Root Account 34</p> <p>User 35</p> <p>Group 37</p> <p>Policy 38</p> <p>Role 38</p> <p>Common Tasks 39</p> <p>Creating a User 42</p> <p>Assigning Permissions to an Existing User 47</p> <p>Creating a Group 49</p> <p>Adding Users from a Group 50</p> <p>Creating a Role 51</p> <p>Securing the Root Account with MFA 54</p> <p>Setting Up an IAM Password Rotation Policy 57</p> <p>Summary 59</p> <p><b>Chapter 4 Amazon EC2 61</b></p> <p>Key Concepts 62</p> <p>Instances and Instance Types 62</p> <p>Amazon Machine Images 65</p> <p>Security Groups 66</p> <p>Pricing Models 67</p> <p>Data Storage 68</p> <p>Instance Life Cycle 68</p> <p>Common Tasks 70</p> <p>Creating an Instance 70</p> <p>Managing Existing Instances 81</p> <p>Accessing Amazon EC2 Instances Using the AWS CLI 88</p> <p>Linux, Mac OSX, Unix Users 88</p> <p>Windows Users 92</p> <p>Summary 100</p> <p><b>Chapter 5 Amazon S3 101</b></p> <p>Key Concepts 102</p> <p>Buckets 102</p> <p>Object Key 102</p> <p>Object Value 103</p> <p>Version ID 103</p> <p>Storage Class 103</p> <p>Costs 104</p> <p>Subresources 104</p> <p>Object Metadata 105</p> <p>Common Tasks 106</p> <p>Creating a Bucket 106</p> <p>Uploading an Object 110</p> <p>Accessing an Object 114</p> <p>Changing the Storage Class of an Object 118</p> <p>Deleting an Object 118</p> <p>Amazon S3 Bucket Versioning 119</p> <p>Accessing Amazon S3 Using the AWS CLI 123</p> <p>Summary 124</p> <p><b>Chapter 6 Amazon DynamoDB 125</b></p> <p>Key Concepts 126</p> <p>Tables 126</p> <p>Items 126</p> <p>Attributes 127</p> <p>Primary Keys 127</p> <p>Secondary Indexes 127</p> <p>Queries 128</p> <p>Contents xi</p> <p>Scans 128</p> <p>Read Consistency 128</p> <p>Provisioned Throughput 129</p> <p>Common Tasks 130</p> <p>Creating a Table 130</p> <p>Adding Items to a Table 134</p> <p>Creating an Index 138</p> <p>Performing a Scan 140</p> <p>Performing a Query 142</p> <p>Summary 143</p> <p><b>Chapter 7 AWS Lambda 145</b></p> <p>Common Use Cases for AWS Lambda 146</p> <p>Key Concepts 147</p> <p>Supported Languages 147</p> <p>AWS Lambda Functions 147</p> <p>Programming Model 148</p> <p>Execution Environment 152</p> <p>Common Tasks 153</p> <p>Creating a Simple Node.js Lambda Function</p> <p>Using the AWS Management Console 154</p> <p>Testing an AWS Lambda Function Using the AWS</p> <p>Management Console 160</p> <p>Deleting an AWS Lambda Function Using the</p> <p>AWS Management Console 163</p> <p>Summary 165</p> <p>Bonus Chapter 1 Amazon Simple Notification Service 1</p> <p>Key Concepts 2</p> <p>Topic 2</p> <p>Publisher 3</p> <p>Subscriber 3</p> <p>Common Tasks 4</p> <p>Creating a Topic 5</p> <p>Creating an E-Mail Subscription 6</p> <p>Creating an Amazon SMS Subscription 9</p> <p>Posting a Message to a Topic 10</p> <p>Summary 13</p> <p>Bonus Chapter 2 Amazon Mobile Analytics 1</p> <p>Key Concepts 2</p> <p>App 2</p> <p>Supported Client Platforms 3</p> <p>Session 3</p> <p>Events 3</p> <p>Amazon Cognito Identity Pool 4</p> <p>Reports 4</p> <p>Common Tasks 5</p> <p>Adding an App to Amazon Mobile Analytics 5</p> <p>Viewing Standard Reports 13</p> <p>Summary 20</p> <p>Bonus Chapter 3 AWS Device Farm 1</p> <p>Key Concepts 2</p> <p>Devices 3</p> <p>Device Slots 3</p> <p>Automated Test Types 3</p> <p>Run 5</p> <p>Job 5</p> <p>Project 5</p> <p>Report 5</p> <p>Session 6</p> <p>Common Tasks 6</p> <p>Creating a Project 7</p> <p>Creating a New Test Run with an iOS Application 8</p> <p>Creating a New Test Run with an Android Application 21</p> <p>Creating an Interactive Session 28</p> <p>Summary 31</p> <p>Bonus Chapter 4 Installing WordPress on Amazon EC2 1</p> <p>Prerequisites 2</p> <p>Creating an Amazon EC2 Instance 3</p> <p>Installing WordPress on Your Amazon EC2 Instance 9</p> <p>Installing Apache, PHP, and MySQL 11</p> <p>Creating a MySQL User and Database for WordPress 17</p> <p>Installing and Configuring WordPress 19</p> <p>Summary 23</p> <p><b>Part II AWS for iOS Developers 167</b></p> <p><b>Chapter 8 Integrating the AWS SDK for iOS 169</b></p> <p>Integrating the AWS SDK for iOS Using CocoaPods 170</p> <p>Integrating the AWS SDK for iOS Using Carthage 175</p> <p>Integrating the AWS SDK for iOS Using Dynamic Frameworks 182</p> <p>Summary 185</p> <p><b>Chapter 9 Implementing User Signup and Login Using</b></p> <p>Amazon Cognito User Pools 187</p> <p>Introducing Amazon Cognito User Pools 188</p> <p>Examining the AWSChat Xcode Project 189</p> <p>Creating an Amazon Cognito User Pool 190</p> <p>Pool Name 192</p> <p>User Attributes 193</p> <p>Password Security Policy 194</p> <p>MFA and Account Verification 195</p> <p>Message Customization 196</p> <p>Cost Allocation Tags 197</p> <p>Devices 198</p> <p>Apps 198</p> <p>Review and Create 201</p> <p>Retrieving the App Client Secret 202</p> <p>Updating the AWS Chat Application 204</p> <p>Creating the User Pool Controller Class 204</p> <p>Updating the Login View Controller 215</p> <p>Updating the Signup View Controller 219</p> <p>Updating the Home View Controller 231</p> <p>Managing Users 231</p> <p>Summary 232</p> <p><b>Chapter 10 Implementing Login Using Facebook 233</b></p> <p>Creating an App on Facebook 234</p> <p>Adding the Facebook SDK to the</p> <p>Xcode Project 239</p> <p>Creating an Amazon Cognito</p> <p>Identity Pool 246</p> <p>Updating the Application User Interface 251</p> <p>Summary 267</p> <p><b>Chapter 11 Implementing Login Using Google 269</b></p> <p>Adding the Google SDK to the</p> <p>Xcode Project 270</p> <p>Updating the Identity Pool 277</p> <p>Updating the AWSChat Application 280</p> <p>Summary 292</p> <p><b>Chapter 12 Accessing Amazon DynamoDB 293</b></p> <p>Creating Amazon DynamoDB Tables 295</p> <p>Creating the User Table 296</p> <p>Creating the Friend Table 300</p> <p>Creating the Chat Table 300</p> <p>Creating the Message Table 301</p> <p>Updating the IAM Policy Used by the Identity Pool 303</p> <p>Creating an IAM Service Role 307</p> <p>Populating the User Table with an AWS Lambda Function 310</p> <p>Testing the AWS Lambda Function 320</p> <p>Updating the AWSChat App 322</p> <p>Creating Model Classes 323</p> <p>Creating the ChatManager Class 328</p> <p>Creating the DynamoDBController Class 329</p> <p>Updating the CognitoIdentityPoolController Class and the</p> <p>Amazon Cognito Identity Pool 341</p> <p>Updating the Home View Controller 349</p> <p>Adding Friends 354</p> <p>Summary 361</p> <p><b>Chapter 13 Adding AWSChat Support with Amazon DynamoDB and Amazon S3 363</b></p> <p>Updating the DynamoDBController Class 365</p> <p>Configuring Amazon S3 370</p> <p>Creating Buckets 370</p> <p>Updating the Authenticated Identity Role 375</p> <p>Creating the S3Controller Class 381</p> <p>Updating the ChatManager Class 383</p> <p>Updating the User Interface of the App 391</p> <p>Summary 403</p> <p><b>Chapter 14 Using AWS Lambda to Generate Thumbnails 405</b></p> <p>Creating a Node.JS Lambda Function Deployment Package 407</p> <p>Updating the AWS Lambda Execution Service Role 415</p> <p>Creating an AWS Lambda Function Using the AWS</p> <p>Management Console 418</p> <p>Testing the AWS Lambda Function 423</p> <p>Updating the S3Controller Class 428</p> <p>Updating the ChatManager Class 431</p> <p>Updating the User Interface of the App 432</p> <p>Summary 434</p> <p>Bonus Chapter 5 Adding Support for Apple Push Notifications 1</p> <p>High-Level Steps 3</p> <p>Configuring the App on the Apple Developer Website 4</p> <p>Registering an Application Identifier 5</p> <p>Creating a Development Provisioning Profile 7</p> <p>Creating an SSL Certificate 11</p> <p>Extracting the Private Key from the Certificate 15</p> <p>Converting the Certificate and Private Key to PEM Files 17</p> <p>Creating a Platform Application on Amazon SNS 17</p> <p>Updating the IAM Policy 20</p> <p>Updating the AWSChat Application 24</p> <p>Creating the SNSController Class 25</p> <p>Updating the Application Delegate 27</p> <p>Contents xv</p> <p>Updating the Home View Controller 29</p> <p>Sending a Push Notification to the Device 30</p> <p>Using an Amazon SNS Topic to Send</p> <p>Push Messages 32</p> <p>Summary 35</p> <p>Bonus Chapter 6 Integrating Amazon Mobile Analytics with the iOS App 1</p> <p>Adding an App to Amazon Mobile Analytics 3</p> <p>Updating the AWSChat Application 9</p> <p>Creating the MobileAnalytics Class 9</p> <p>Generating Analytics Events 11</p> <p>Viewing Analytics Reports 12</p> <p>Summary 13</p> <p><b>Part III AWS for Android Developers 435</b></p> <p><b>Chapter 15 Integrating the AWS SDK for Android with Android Studio 437</b></p> <p>Integrating the AWS SDK for Android Using Gradle 438</p> <p>Integrating the AWS SDK for Android by Importing JAR Files 442</p> <p>Summary 443</p> <p><b>Chapter 16 Implementing User Signup and Login Using Amazon Cognito User Pools 445</b></p> <p>Introducing Amazon Cognito User Pools 446</p> <p>Examining the AWSChat Android Studio Project 447</p> <p>Creating an Amazon Cognito User Pool 448</p> <p>Pool Name 451</p> <p>User Attributes 451</p> <p>Password Security Policy 453</p> <p>MFA and Account Verification 454</p> <p>Message Customization 455</p> <p>Cost Allocation Tags 456</p> <p>Devices 456</p> <p>Apps 457</p> <p>Review and Create 459</p> <p>Retrieving the App Client Secret 460</p> <p>Updating the AWS Chat Application 462</p> <p>Creating the User Pool Controller Class 463</p> <p>Updating the Login Activity 479</p> <p>Updating the Signup Activity 483</p> <p>Managing Users 495</p> <p>Summary 496</p> <p><b>Chapter 17 Implementing Login Using Facebook 497</b></p> <p>Creating an App on Facebook 499</p> <p>Adding the Facebook SDK to the Android Studio Project 504</p> <p>Creating an Amazon Cognito Identity Pool 507</p> <p>Retrieving the Identity Pool ID 512</p> <p>Creating the Identity Pool Controller Class 514</p> <p>Updating the Application User Interface 521</p> <p>Summary 534</p> <p><b>Chapter 18 Implementing Login Using Google 535</b></p> <p>Installing the Google Play Services SDK 537</p> <p>Creating an App on the Google Developer Console 537</p> <p>Updating the Android Studio Project 543</p> <p>Updating the Identity Pool 545</p> <p>Using a Google+ Authentication Provider 548</p> <p>Using an OpenID Connect Authentication Provider 549</p> <p>Updating the Identity Pool Controller Class 554</p> <p>Updating the Application User Interface 560</p> <p>Summary 575</p> <p><b>Chapter 19 Accessing Amazon DynamoDB 577</b></p> <p>Creating Amazon DynamoDB Tables 579</p> <p>Creating the User Table 580</p> <p>Creating the Friend Table 585</p> <p>Creating the Chat Table 585</p> <p>Creating the Message Table 586</p> <p>Updating the IAM Policy Used by the Identity Pool 587</p> <p>Creating an IAM Service Role 592</p> <p>Populating the User Table with an AWS Lambda Function 596</p> <p>Testing the AWS Lambda Function 606</p> <p>Updating the AWSChat App 608</p> <p>Model Classes 609</p> <p>The ChatManager Class 615</p> <p>The DynamoDBController Class 616</p> <p>Linking the User Pool to the Identity Pool 632</p> <p>The Updated Home Activity 644</p> <p>The AddFriendActivity Class 650</p> <p>Summary 656</p> <p><b>Chapter 20 Adding AWSChat Support with Amazon</b></p> <p>DynamoDB and Amazon S3 657</p> <p>Updating Project Settings 659</p> <p>Updating the DynamoDBManager Class 659</p> <p>Configuring Amazon S3 666</p> <p>Creating Buckets 666</p> <p>Updating the Authenticated Identity Role 671</p> <p>Creating the S3Controller Class 676</p> <p>Updating the ChatManager Class 679</p> <p>Updating the User Interface of the App 687</p> <p>Summary 710</p> <p><b>Chapter 21 Using AWS Lambda to Generate Thumbnails 711</b></p> <p>Creating a Node.js Lambda Function Deployment Package 713</p> <p>Updating the AWS Lambda Execution Service Role 721</p> <p>Creating an AWS Lambda Function Using the</p> <p>AWS Management Console 724</p> <p>Testing the AWS Lambda Function 730</p> <p>Updating the S3Controller Class 735</p> <p>Updating the ChatManager Class 737</p> <p>Updating the User Interface of the App 738</p> <p>Summary 746</p> <p>Bonus Chapter 7 Adding Support for GCM Notifications 1</p> <p>High-Level Steps 3</p> <p>Retrieving the Server API Key 4</p> <p>Creating a Platform Application on Amazon SNS 5</p> <p>Updating the IAM Policy 8</p> <p>Creating a New Role Policy 8</p> <p>Updating an Existing Role Policy 12</p> <p>Updating the AWSChat Application 14</p> <p>Installing the Google Play Services SDK 14</p> <p>Updating Project Settings 15</p> <p>Creating the SNSController Class 20</p> <p>Creating the SNSControllerGenericHandler Interface 24</p> <p>Creating the Service Classes 24</p> <p>Updating the Login Activity 27</p> <p>Updating the Home Activity 29</p> <p>Sending a Push Notification to the Device 29</p> <p>Using an Amazon SNS Topic to Send Push Messages 32</p> <p>Summary 35</p> <p>Bonus Chapter 8 Integrating Amazon Mobile Analytics with the Android App 1</p> <p>Adding an App to Amazon Mobile Analytics 3</p> <p>Updating the AWSChat Application 10</p> <p>Creating the MobileAnalytics Class 10</p> <p>Generating Analytics Events 13</p> <p>Viewing Analytics Reports 15</p> <p>Summary 16</p> <p>Index 747</p>
<p><b>ABOUT THE AUTHOR</b> <p><b>Abhishek Mishra</b> has been active in the IT industry for over 19 years and has extensive experience with a wide range of programming languages, enterprise systems and platforms. He holds a master's degree in Computer Science from the University of London and currently provides consultancy services to Barclays Bank PLC in London as a Solutions Architect. He is the author of iOS Code Testing, iPhone and iPad App – 24 Hour Trainer, Swift iOS – 24 Hour Trainer, and the technical reviewer of Professional iOS Programming. <p><b>ABOUT AMAZON WEB SERVICES</b> <p>Amazon Web Services offers a broad array of global cloud-based products, including tools for computing, storage, databases, analytics, and networking; mobile and developer tools; management tools; lot, security, and enterprise applications. AWS is used by large enterprises and hot startups alike to power a wide variety of workloads, including web and mobile applications, game development, data processing and warehousing, storage, archiving, and many more. Learn more at https://aws.amazon.com.
<p><b>Covers both iOS and Android Devices</b> <ul> <li> Learn about the AWS ecosystem</li> <li> Get the most out of popular services such as EC2, S3, DynamoDB, Lambda, Mobile Analytics, Device Farm through the console and command line</li> <li> Build a chat application in Swift and Java</li> </ul> <p><b>Grow your skillset with this must-have introduction to AWS tools and concepts</b> <p>The cloud computing ecosystem is exploding in volume and importance. By building your knowledge of Amazon Web Services, you'll enhance your value as a developer and solution architect while making your job easier. This practical, real-world resource shows you step by step how to create IAM accounts and try out some of the most popular services, including EC2, S3, DynamoDB Lambda, Mobile Analytics, Device Farm, and more. If you have prior experience with Swift or Java and a solid knowledge of web services, this book can help you quickly take your skills to the next level. <p>Covering both iOS and Android applications, this guide first offers an overview of cloud computing concepts and the AWS ecosystem. You'll then go on to build a WhatsApp style chat application, written in Swift and Java, running completely off AWS Infrastructure. <p>You'll learn to install the official AWS SDKs for iOS and Android on a Mac, set up a new project in Xcode and Android Studio using the AWS SDK, use Cognito identity pools and user pools to authenticate users and federate identities with other web identity providers such as Facebook, access S3 buckets from a mobile app, access DynamoDB tales from a mobile app, and much more. <p>Next, you'll learn to use AWS Lambda to generate thumbnails, configure SNS to send push notifications to your iOS and Android app, test the app on remotely- connected devices, and gather application usage reports using Mobile Analytics. <p><b>You'll be ready to hit the ground running, quickly and confidently, as you learn to:</b> <ul> <li> Create IAM accounts</li> <li> Understand the key concepts of cloud computing and AWS</li> <li> Work with the AWS Device Farm</li> <li> Develop real-world WhatsApp style chat apps for both iOS and Android<sup>®</sup></li> <li> Implement Facebook and Google logins</li> <li> Explore DynamoDB<sup>®</sup>, S3, EC2, SNS, Cognito<sup>®</sup>, and more</li> <li> Identify PaaS, IaaS, SaaS</li> <li> Integrate Amazon mobile analytics</li> </ul> <p><b>Visit the product page at sybex.com to access the bonus chapters and FREE code samples.</b>

Diese Produkte könnten Sie auch interessieren:

Ambient Intelligence
Ambient Intelligence
von: Gian Luca Foresti, Tim Ellis
PDF ebook
CHF 118.00
Access Control Systems
Access Control Systems
von: Messaoud Benantar
PDF ebook
CHF 118.00