[FWM303] Flutter でマルチプラットフォームを構築するワークショップに参加してきた #AWSreInvent

2023.12.31

はじめに

CX事業本部 Delivery部 の田中孝明です。

Create a cross-platform Flutter application with AWS Amplify という ワークショップに参加してきました。

AppSync を使った Flutter のアプリケーションを AWS Amplify に構築するまでの手順を体験できました。

ワークショップについて

FWM303 | Create a cross-platform Flutter application with AWS Amplify

このワークショップでは、さまざまなコード ベースを維持するストレスを感じることなく、Android、iOS、Web などの複数のプラットフォーム向けにパフォーマンスの高いアプリケーションを構築する方法を学びます。 AWS Amplify および Flutter ライブラリを使用すると、クラウドに関する深い専門知識がなくても、機能が豊富なクラウド利用のアプリケーションを構築できます。 完全なクロスプラットフォーム アプリケーションを作成し、認証、API とデータのやり取り、メディア/ファイル ストレージなどの機能を追加する方法を学びます。 参加するにはラップトップを持参する必要があります。

ワークショップ

Flutter の開発環境を準備

Cloud 9 を使わないワークショップだったので、ここが一番時間がかかりました。 Flutter 自体は SDK のダウンロードとパスの追加で利用できるようになるのですが、現地の Wi-Fi でなかなか SDK のダウンロードが終わりませんでした。

Flutter アプリケーションを Amplify にデプロイ

Flutter アプリケーションをダウンロードし、指定のフォルダで amplify init を実行し Amplify プロジェクトの設定を行います。

Amplify Authenticator を使用してアプリに認証を追加する

amplify add auth コマンドで Amazon Cognito で認証できるように構築します。今回指定されたのはメールアドレスでの認証でした。

amplify push コマンドで認証用のリソースを追加します。

ここまで手順に従って Amplify にデプロイすると、ログイン画面が出てきます。ここまでで新規ユーザーの作成、作成したユーザーでのログインができるようになります。

ゲーム画面の作成

AppSync の API 作成、ゲームの UI 作成など、手順に従ってゲーム画面を作り込んでいきます。最終的には神経衰弱ゲームとして動作するところまで体験できます。

ゲーム終了画面などもなかなか手が込んでました。

まとめ

モバイルアプリ用のビルドまではワークショップで対応されていませんでしたが、Flutter で作られた Web のアプリケーションをゲームという形で動かせるように体験させてくれるワークショップでした。