AWS Amplify ให้อินเทอร์เฟซที่มีการเปิดเผยและใช้งานง่ายในการดำเนินงานคลาวด์ประเภทต่างๆ การใช้งานเริ่มต้นของเราใช้งานได้กับ Amazon Web Services (AWS) แต่ AWS Amplify ได้รับการออกแบบให้เปิดและสามารถทำได้สำหรับแบ็กเอนด์หรือบริการที่กำหนดเอง ดู AWS ขยายรายละเอียดเพิ่มเติมเกี่ยวกับเฟรมเวิร์กขยาย
เรากำลังทำซ้ำและมองหาข้อเสนอแนะและการทำงานร่วมกันดังนั้นโปรด แจ้งให้เราทราบความคิดเห็นของคุณ เกี่ยวกับทิศทางและแผนงานของเรา
คู่มือเริ่มต้นใช้งาน
โปรดใช้เวอร์ชันล่าสุด (v2) ของการขยายตัว หากคุณกำลังใช้ V1 ให้ทำตามคำแนะนำเหล่านี้เพื่ออัพเกรดเป็น V2
| ห้องสมุด | แพ็คเกจ Pub.Dev | คำอธิบาย |
|---|---|---|
| การรับรองความถูกต้อง | API และการสร้างบล็อกสำหรับนักพัฒนาที่ต้องการสร้างประสบการณ์การตรวจสอบผู้ใช้กับ Amazon Cognito | |
| การวิเคราะห์ | รวบรวมข้อมูลการวิเคราะห์สำหรับแอปของคุณด้วย PINPOINT ได้อย่างง่ายดาย ข้อมูลการวิเคราะห์รวมถึงเซสชันผู้ใช้และกิจกรรมที่กำหนดเองอื่น ๆ ที่คุณต้องการติดตามในแอปของคุณ | |
| พื้นที่จัดเก็บ | ให้กลไกง่ายๆสำหรับการจัดการเนื้อหาผู้ใช้สำหรับแอพของคุณในที่สาธารณะที่ได้รับการป้องกันหรือเป็นส่วนตัวกับ Amazon S3 | |
| ที่เก็บข้อมูล | รูปแบบการเขียนโปรแกรมสำหรับการใช้ประโยชน์จากข้อมูลที่ใช้ร่วมกันและแจกจ่ายโดยไม่ต้องเขียนรหัสเพิ่มเติมสำหรับสถานการณ์ออฟไลน์และออนไลน์ซึ่งทำให้การทำงานกับข้อมูลผู้ใช้แบบกระจายแบบกระจายเช่นเดียวกับการทำงานกับข้อมูลท้องถิ่นเท่านั้น | |
| API (พักผ่อน) | จัดหาวิธีแก้ปัญหาง่าย ๆ เมื่อทำการร้องขอ HTTP มันมีกระบวนการเซ็นชื่ออัตโนมัติที่มีน้ำหนักเบาซึ่งสอดคล้องกับ AWS Signature เวอร์ชัน 4 | |
| API (graphql) | โต้ตอบกับเซิร์ฟเวอร์ GraphQL หรือ AWS APPSYNC API ของคุณด้วยไคลเอนต์ GraphQL ที่ใช้งานง่ายและกำหนดค่า | |
| การแจ้งเตือน | ทริกเกอร์การแจ้งเตือนพุชไปยังแอปของคุณและบันทึกตัวชี้วัดในการระบุเมื่อผู้ใช้ได้รับหรือเปิดการแจ้งเตือน | |
| ผู้ตรวจสอบความถูกต้อง | AMPLIFY Flutter Authenticator ช่วยลดความซับซ้อนของกระบวนการตรวจสอบความถูกต้องของผู้ใช้โดยให้การไหลที่ปรับแต่งได้อย่างสมบูรณ์ซึ่งใช้งานได้ เพียงแค่ห่อเส้นทางที่ได้รับการรับรองความถูกต้องของแอปของคุณในส่วนประกอบ Authenticator และกระบวนการตรวจสอบสิทธิ์ผู้ใช้และการจัดการเซสชันเข้าสู่ระบบได้รับการจัดการให้คุณ |
เราติดตามการกำหนดเวอร์ชันความหมายสำหรับการเปิดตัวของเรา
เมื่อ AMPLIFY เพิ่มรายการการแจงนับใหม่หรือประเภทย่อยคลาสที่ปิดผนึกเราจะเผยแพร่ไลบรารีรุ่น รอง ใหม่
แอปพลิเคชันที่ใช้คำสั่ง switch เพื่อประเมินสมาชิกทั้งหมดของประเภทที่แจกแจงสามารถเพิ่มประโยค default เพื่อป้องกันไม่ให้กรณีใหม่จากการก่อให้เกิดคำเตือนหรือข้อผิดพลาด
เราติดตามการกำหนดเวอร์ชันความหมายเพื่ออัปเดตการพึ่งพาของเรา ซึ่งรวมถึงการอัปเดตเวอร์ชัน Dart และ Flutter SDK
| หมวดหมู่ | Android | iOS | เว็บ | หน้าต่าง | แม็กอส | ลินเวกซ์ |
|---|---|---|---|---|---|---|
| การวิเคราะห์ | ||||||
| API (พักผ่อน) | ||||||
| API (graphql) | ||||||
| การรับรองความถูกต้อง | ||||||
| ที่เก็บข้อมูล | - | - | - | - | ||
| พื้นที่จัดเก็บ | ||||||
| การแจ้งเตือน | - | - | - | - |
Amplify for Flutter เป็นโครงการโอเพ่นซอร์สและยินดีต้อนรับการมีส่วนร่วมจากชุมชน Flutter ดูการมีส่วนร่วม
เปิดโครงการ Flutter ของคุณ หากคุณไม่มีโครงการ Flutter ที่ใช้งานอยู่คุณสามารถสร้างโครงการหลังจากติดตั้งเครื่องมือพัฒนา Flutter และ Running flutter create <project-name> ในเทอร์มินัลของคุณ
การใช้แอมพลิ amplify init
หากคุณยังไม่ได้กำหนดค่าการขยาย CLI ให้ตรวจสอบเอกสารของเราที่การติดตั้ง CLI Amplify
== > 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 defaultเพิ่มหมวดหมู่ขยาย (เลือกค่าเริ่มต้นสำหรับตัวอย่างนี้):
$ 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!' ),
),
),
),
);
}
}เนื่องจากแอมพลิฟายเออร์รองรับ 6 แพลตฟอร์มที่มีกระพือรวมถึง iOS, Android, Web และ Desktop จึงอาจจำเป็นต้องมีการกำหนดค่าพิเศษสำหรับแต่ละแพลตฟอร์ม ตรวจสอบคู่มือการตั้งค่าแพลตฟอร์มเพื่อให้แน่ใจว่าคุณทำตามขั้นตอนที่จำเป็นแล้ว
Run flutter run เพื่อเปิดแอปของคุณบนอุปกรณ์ที่เชื่อมต่อ
เมื่อโหลดแอปแล้วให้แตะที่ การกำหนดค่าแอมพลิฟายเออร์ จากนั้นใน เหตุการณ์บันทึก สองสามครั้ง
หากต้องการดูเหตุการณ์ที่คุณบันทึกไว้ amplify console analytics สิ่งนี้จะเปิดคอนโซล Amazon Pinpoint สำหรับโครงการของคุณในเว็บเบราว์เซอร์เริ่มต้นของคุณ ภายในเวลาประมาณหนึ่งนาทีคุณควรเริ่มเห็นเหตุการณ์ที่เกิดขึ้นในส่วนเหตุการณ์ของคอนโซล Pinpoint
ขอแสดงความยินดีคุณได้สร้างแอพขยายตัวครั้งแรกของคุณ! -
สำหรับเอกสารเพิ่มเติมและขยายการใช้งานหมวดหมู่ดูเอกสารประกอบ
Flutter และโลโก้ที่เกี่ยวข้องเป็นเครื่องหมายการค้าของ Google LLC เราไม่ได้รับการรับรองโดยหรือเป็นพันธมิตรกับ Google LLC