美文网首页Flutter填坑手札
flutter 导入 multi_image_picker插件

flutter 导入 multi_image_picker插件

作者: 践行丶见远 | 来源:发表于2019-07-30 09:16 被阅读0次

multi_image_picker 使用文档
按照文档使用操作老项目androidx没有转换成功,所以想直接创建androidx尝试一下

本次以demo为例,所以老项目的androidx版本更改还没有研究

1、初始化androidx项目
flutter create --androidx androidx_demo
2、创建成功后用vscode打开项目
3、pubspec.yaml中导入 multi_image_picker: ^4.3.6
4、按照项目实际需求配置android和ios配置

android/app/src/main/AndroidMainFest.xml

  package="com.example.androidx_demo">

  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  <uses-permission android:name="android.permission.CAMERA" />

5、 注意点

此时还需要注意multi_image_picker 中 minSdkVersion 对应的是 19,所以我们去android/appbuild.gradle 更改对应版本 minSdkVersion 19

ios info.plist 中进行对应配置

<key>NSPhotoLibraryUsageDescription</key>
<string>Example usage description</string>
<key>NSCameraUsageDescription</key>
<string>Example usage description</string>

6、iOS比较简单,只是需要先flutter pub get 将项目的Podfile 更新出来,打开指定最低版本 ,后面在追加不使用静态库

platform :ios, '9.0' 
use_frameworks!

7、实际使用

// 接受返回的图片
  List<Asset> images = List<Asset>();
// 展示返回的图片
  Widget _buildGridView() {
    return GridView.count(
      crossAxisCount: 3,
      children: List.generate(images.length, (index) {
        Asset asset = images[index];
        return AssetThumb(
          asset: asset,
          width: 300,
          height: 300,
        );
      }),
    );
  }
// 
  void _choiceImages() async {
    var list =
        await MultiImagePicker.pickImages(maxImages: 9, enableCamera: true);
    setState(() {
      images = list;
    });
  }

8、github_demo

相关文章

网友评论

    本文标题:flutter 导入 multi_image_picker插件

    本文链接:https://www.haomeiwen.com/subject/edzwrctx.html