flutter 插件image_picker


适用于iOS和Android的Flutter插件,用于从图像库中拾取图像,并使用相机拍摄新照片。

添加依赖

dependencies:
  image_picker: ^0.5.0+3

安装

flutter packages get

导入

import 'package:image_picker/image_picker.dart';

iOS

将以下键添加到位于<project root> /ios/Runner/Info.plist中的Info.plist文件中:

  • NSPhotoLibraryUsageDescription - 描述您的应用需要照片库权限的原因。这在可视化编辑器中称为隐私 - 照片库使用说明
  • NSCameraUsageDescription - 描述您的应用需要访问相机的原因。这在可视化编辑器中称为隐私 - 相机使用说明
  • NSMicrophoneUsageDescription - 如果您打算录制视频,请说明您的应用需要访问麦克风的原因。这在可视化编辑器中称为隐私 - 麦克风使用说明。

Android

无需配置 - 插件应该开箱即用。

实例

import 'package:image_picker/image_picker.dart';

class MyHomePage extends StatefulWidget {
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  File _image;

  Future getImage() async {
    var image = await ImagePicker.pickImage(source: ImageSource.camera);

    setState(() {
      _image = image;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Image Picker Example'),
      ),
      body: Center(
        child: _image == null
            ? Text('No image selected.')
            : Image.file(_image),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: getImage,
        tooltip: 'Pick Image',
        child: Icon(Icons.add_a_photo),
      ),
    );
  }
}