我在path_provider invokeMethod <string>(“ getApplicationDocumentsDirectory”)中遇到错误

时间:2019-05-15 07:39:52

标签: flutter sqflite

[ERROR:flutter/shell/common/shell.cc(184)] Dart Error: Unhandled exception:
E/flutter (23720): NoSuchMethodError: Class 'MethodChannel' has no instance method 'invokeMethod' with matching arguments.
E/flutter (23720): Receiver: Instance of 'MethodChannel'
E/flutter (23720): Tried calling: invokeMethod<String>("getApplicationDocumentsDirectory")
E/flutter (23720): Found: invokeMethod(String, [dynamic]) => Future<dynamic>
E/flutter (23720): #0      Object.noSuchMethod (dart:core/runtime/libobject_patch.dart:50:5)
E/flutter (23720): #1      getApplicationDocumentsDirectory (package:path_provider/path_provider.dart:65:22)
E/flutter (23720): <asynchronous suspension>
E/flutter (23720): #2      DatabaseHelper.initializeDb (package:snote/snote/utils/database_helper.dart:45:36)
E/flutter (23720): <asynchronous suspension>

2 个答案:

答案 0 :(得分:1)

发生此问题的原因是您没有使用最新版本的Dart。我描述了两种解决方法来消除此错误。

解决方案1:使用以前版本的Path Provider 即: path_provider:1.0.0

解决方案2:,如果您想使用路径提供商的最新版本,则将flutter和Dart更新为最新版本。

答案 1 :(得分:0)

一切都写在堆栈跟踪中:

  

类“ MethodChannel”没有实例方法“ invokeMethod”,   匹配的参数。

因此,您正在将无效的参数传递给invokeMethod