未定义方法 getImage

The method getImage isn't defined

我正在使用 image_picker 0.6.7+17 库以便使用 phone 相机拍摄图像。
我使用的是 android 设备,而不是 ios 设备。

一个问题

似乎未定义 getImage 方法,我从 docs:

中获取了这个确切的代码
  final picker = ImagePicker();

  Future getImage() async {
    final pickedFile = await picker.getImage(source: ImageSource.camera);
  }

我收到这个错误:

lib/pickers/image_picker.dart:17:37: Error: The method 'getImage' isn't defined for the class 
'ImagePicker'.
 - 'ImagePicker' is from 'package:chat_app/pickers/image_picker.dart' 
('lib/pickers/image_picker.dart').
Try correcting the name to the name of an existing method, or defining a method named 'getImage'.
final pickedFile = await picker.getImage(source: ImageSource.camera);
                                ^^^^^^^^

到目前为止我做了什么:

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^1.0.0
  cloud_firestore: 0.13.5
  firebase_auth: 0.16.1
  image_picker: ^0.6.7+17

可能是什么问题?

您确定您使用的 ImagePicker 不是这个 package:chat_app/pickers/image_picker.dart 中的那个吗?可能存在 class 名称冲突,您必须重命名自己的 ImagePicker class

您正在尝试将旧 API 与指定使用新 API 的插件版本一起使用。 老API

File image = await ImagePicker.pickImage(...)

新建API

final _picker = ImagePicker();
.
.
.
PickedFile image = await _picker.getImage(...)

只需升级到最新版本的 image_picker。 并将 getImage 替换为 pickImage bcz getImage 已弃用。

我通过像那样定义选择器解决了同样的问题

 final picker = ImagePicker();

然后使用这个

    Future<void> _chooseImage() async {
  var pickedFile = await picker.getImage(source: ImageSource.gallery);
}