AWS Amplifyは、さまざまなカテゴリのクラウド操作にわたって宣言的で使いやすいインターフェイスを提供します。デフォルトの実装は、Amazon Web Services(AWS)で動作しますが、AWS Amplifyは、カスタムバックエンドまたはサービスのためにオープンでプラグできるように設計されています。 AMPLIFYフレームワークの詳細については、AWS Amplifyを参照してください。
私たちは繰り返してフィードバックとコラボレーションを探しているので、私たちの方向とロードマップに関するあなたのフィードバックを教えてください。
ガイドを開始します
Amplify Flutterの最新バージョン(V2)を使用してください。現在V1を使用している場合は、次の手順に従ってV2にアップグレードします。
| 図書館 | pub.devパッケージ | 説明 |
|---|---|---|
| 認証 | Amazon Cognitoでユーザー認証エクスペリエンスを作成したい開発者向けのAPIとビルディングブロック。 | |
| 分析 | PinPointを使用して、アプリの分析データを簡単に収集できます。分析データには、アプリで追跡するユーザーセッションやその他のカスタムイベントが含まれます。 | |
| ストレージ | Amazon S3を使用して、公共の場、保護、またはプライベートストレージバケットでアプリのユーザーコンテンツを管理するための簡単なメカニズムを提供します。 | |
| データストア | オフラインおよびオンラインシナリオの追加コードを作成せずに共有データと分散データを活用するためのプログラミングモデル。これにより、分散型のクロスユーザーデータを使用して、ローカルのみのデータを操作するのと同じように簡単に作業できます。 | |
| API(REST) | HTTPリクエストを行うときに簡単なソリューションを提供します。 AWSの署名バージョン4に準拠する自動、軽量の署名プロセスを提供します。 | |
| API(graphql) | 使いやすく構成されたGraphQLクライアントを使用して、GraphQL ServerまたはAWS AppSync APIと対話します。 | |
| 通知 | ユーザーが通知を受信または開いたときに、アプリに通知をプッシュし、PINPINTでメトリックを記録します。 | |
| 認証者 | Amplify Flutter Authenticatorは、機能する完全にカスタマイズ可能なフローを提供することにより、ユーザーを認証するプロセスを簡素化します。 Authenticatorコンポーネントにアプリの認証されたルートをラップするだけで、ユーザーを認証してログインセッションの管理プロセスが処理されます。 |
リリースのセマンティックバージョンに従います。
Amplifyが新しい列挙エントリまたはシールされたクラスサブタイプを追加すると、ライブラリの新しいマイナーバージョンを公開します。
switchステートメントを使用して列挙されたタイプのすべてのメンバーを評価するアプリケーションは、 default節を追加して、新しいケースがコンパイルされた警告やエラーを引き起こすのを防ぐことができます。
依存関係を更新するためのセマンティックバージョンに従います。これには、DARTおよびFlutter SDKバージョンの更新が含まれます。
| カテゴリ | アンドロイド | iOS | ウェブ | Windows | macos | Linux |
|---|---|---|---|---|---|---|
| 分析 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| API(REST) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| API(graphql) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 認証 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| データストア | ✅ | ✅ | ? | ? | ? | ? |
| ストレージ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| 通知 | ✅ | ✅ | ? | ? | ? | ? |
Amplify for Flutterはオープンソースプロジェクトであり、フラッターコミュニティからの貢献を歓迎します。
フラッタープロジェクトを開きます。アクティブなフラッタープロジェクトがない場合は、フラッター開発ツールをインストールした後、ターミナルにflutter create <project-name>実行した後に作成できます。
Amplify CLIを使用して、プロジェクトのルートからamplify initを実行します。
Amplify CLIを構成していない場合は、Amplify CLIインストールのドキュメントをご覧ください。
== > amplify init
Note: It is recommended to run this command from the root of your app directory
? Enter a name for the project < project-name >
The following configuration will be applied:
Project information
| Name: < project-name >
| Environment: dev
| Default editor: Visual Studio Code
| App type: flutter
| Configuration file location: ./lib/
? Initialize the project with the above configuration ? Yes
Using default provider awscloudformation
? Select the authentication method you want to use: AWS profile
For more information on AWS Profiles, see:
https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html
? Please choose the profile you want to use defaultAmplifyカテゴリを追加します(この例のデフォルトを選択してください):
$ amplify add auth # Choose default configuration after entering this command in your terminal.クラウドへの変更をプッシュして、バックエンドリソースをプロビジョニングします。
$ amplify push pubspec.yamlファイルで、 dependenciesに以下を追加します。
注:アプリで使用していない
pubspecファイルに依存関係を含めないでください。これにより、基礎となるSDKの構成エラーが発生する可能性があります。
dependencies :
amplify_auth_cognito : ^2.0.0
amplify_authenticator : ^2.0.0
amplify_flutter : ^2.0.0
flutter :
sdk : flutterflutter pub get import 'package:amplify_auth_cognito/amplify_auth_cognito.dart' ;
import 'package:amplify_authenticator/amplify_authenticator.dart' ;
import 'package:amplify_flutter/amplify_flutter.dart' ;
import 'package:flutter/material.dart' ;
import 'amplifyconfiguration.dart' ;
void main () {
runApp ( const MyApp ());
}
class MyApp extends StatefulWidget {
const MyApp ({ super .key});
@override
State < MyApp > createState () => _MyAppState ();
}
class _MyAppState extends State < MyApp > {
@override
void initState () {
super . initState ();
_configureAmplify ();
}
Future < void > _configureAmplify () async {
try {
await Amplify . addPlugin ( AmplifyAuthCognito ());
await Amplify . configure (amplifyconfig);
safePrint ( 'Successfully configured' );
} on Exception catch (e) {
safePrint ( 'Error configuring Amplify: $ e ' );
}
}
@override
Widget build ( BuildContext context) {
return Authenticator (
child : MaterialApp (
builder : Authenticator . builder (),
home : const Scaffold (
body : Center (
child : Text ( 'You are logged in!' ),
),
),
),
);
}
}Amplify Flutterは、iOS、Android、Web、デスクトップなどのフラッターを備えた6つのプラットフォームをサポートするため、各プラットフォームに追加の構成が必要になる場合があります。プラットフォームセットアップガイドをチェックして、必要な手順を完了してください。
flutter runを実行して、接続されたデバイスでアプリを起動します。
アプリがロードされたら、 [Amplifyを構成]をタップし、レコードイベントで数回タップします。
再作成したイベントを確認するには、 amplify console analytics実行します。これにより、デフォルトのWebブラウザーでプロジェクトのAmazon Pinpointコンソールが開きます。約1分以内に、Then Pinpointコンソールのイベントセクションに登場しているイベントが表示される必要があります。
おめでとうございます、最初のAmplifyアプリを作成しました! ?
さらなるドキュメントとカテゴリの使用法を増幅するには、ドキュメントを参照してください。
フラッターと関連するロゴは、Google LLCの商標です。 Google LLCに承認されていないか、Google LLCに所属していません。