You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter接入Amplify Cognito用户池出现Amplify plugin was not added错误如何解决

报错问题定位与解决步骤

该Amplify plugin was not added错误核心原因是Amplify Auth Cognito插件的原生/平台端实现未正确加载,按以下步骤排查即可解决:

1 依赖校验

首先确认pubspec.yaml中已添加版本匹配的Amplify依赖,amplify_flutter和amplify_auth_cognito的大版本号必须完全一致,示例配置如下:

dependencies:
  flutter:
    sdk: flutter
  amplify_flutter: ^1.6.0
  amplify_auth_cognito: ^1.6.0

配置完成后执行flutter pub get完成依赖拉取。
注意:禁止两个依赖使用不同大版本,否则会出现兼容性问题导致插件加载失败

2 初始化逻辑校验

Amplify必须严格遵循「先添加插件、再执行配置」的顺序,且不可重复初始化,正确的初始化代码如下:

import 'package:amplify_flutter/amplify_flutter.dart';
import 'package:amplify_auth_cognito/amplify_auth_cognito.dart';
// 引入你的配置文件
import 'amplifyconfiguration.dart';

Future<void> initAmplify() async {
  final authPlugin = AmplifyAuthCognito();
  try {
    // 一次性添加所有所需插件,不要分多次调用addPlugin
    await Amplify.addPlugins([authPlugin]);
    // 插件添加成功后再执行配置
    await Amplify.configure(amplifyconfig);
  } on AmplifyAlreadyConfiguredException {
    // 捕获重复初始化异常,避免崩溃
    safePrint("Amplify已完成初始化,无需重复配置");
  } catch (err) {
    safePrint("Amplify初始化失败:$err");
  }
}

注意:不要在addPlugin异步方法未执行完成前就调用configure,也不要拆分addPlugin调用多次添加插件

3 平台适配校验

  • 如果运行在Web端:需要在web/index.html中引入与当前Flutter Amplify版本匹配的Amplify JS SDK,完成Web端的依赖适配。
  • 如果运行在Android/iOS端:执行以下命令清理旧构建缓存,重新编译原生部分:
flutter clean
flutter pub get
# iOS端额外执行
cd ios && pod install --repo-update && cd ..

修改完配置后必须冷启动应用,不要使用热重载/热重启,插件依赖变更需要全量重新编译才会生效。

4 配置文件校验

你提供的amplifyconfiguration配置结构是正确的,不建议手动修改配置文件内容,优先使用Amplify CLI拉取云端生成的配置,避免手动输入的字段错误导致配置不匹配。

内容的提问来源于stack exchange,提问作者Andrii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 06:06:09