在我的flutter项目中,我使用AWS Amplify存储插件上传文件。
为此,我在下面添加了依赖性dependencies:
flutter:
sdk: flutter
amplify_storage_s3: <1.0.0
amplify_flutter: <1.0.0
amplify_auth_cognito: <1.0.0
in main。dart文件增加了一个功能来配置Amplify
void configureAmplify() async {
// First add plugins (Amplify native requirements)
AmplifyStorageS3 storage = new AmplifyStorageS3();
AmplifyAuthCognito auth = new AmplifyAuthCognito();
Amplify.addPlugins([auth, storage]);
// Configure
await Amplify.configure(amplifyconfig('cashify-bazaar'));
}
我把这个configure
方法称为按钮点击,它工作得很好。
但问题是,一旦我调用configure
方法,并把一个应用程序在后台的后退按,然后从最近的应用程序在android设备上恢复,它抛出一个错误
W/GeneratedPluginsRegister(21233):尝试用FlutterEngine (io.flutter.embedding.engine.FlutterEngine@99d4e49)自动注册插件,但无法找到并调用generatedpluginsregistrant。
并且没有调用flutter插件的onAttachedToEngine,因此没有注册插件通道,从而导致错误
未处理异常:MissingPluginException(没有找到方法
channel
为什么不调用FlutterPlugin的onAttachedToEngine
方法,一旦我调用了Amplify.configure
?
这与https://github.com/aws-amplify/amplify-flutter/pull/345
修复的https://github.com/aws-amplify/amplify-flutter/issues/99相同。