【Flutter】使用image_gallery_saver保存图片(截图、网络图片、gif和视频)到本地相册

本文介绍了如何在Flutter应用中利用image_gallery_saver插件保存截图、网络图片、gif和视频到本地相册,适用于Android和iOS平台。详细步骤包括插件引入、权限配置,并提供了代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

本文主要介绍使用image_gallery_saver保存图片(截图、网络图片、gif和视频)到本地相册,目前已经适配了android和iOS端。

前提

flutter版本:2.8.0
dart版本:2.12.0
image_gallery_saver 跳转
permission_handler 跳转


一、使用步骤

1.使用的插件

# 保存图片到本地
image_gallery_saver: ^1.7.1  
# 权限管理  
permission_handler: ^9.2.0  
# 文件权限  
path_provider: ^2.0.8  
# 网络请求  
dio: ^4.0.6
# 提示框
flutter_easyloading: ^3.0.5 

2.配置权限

  • android 的 AndroidManifest.xml 添加 开启读写storage权限
<!-- 写权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!-- 读权限 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
  • ios 的 Info.plist 添加
<key>NSPhotoLibraryAddUsageDescription</key>
<string>Please allow the APP to save photos to the album</string>

此处省略了关于permission_handler的相关配置,如何想要了解permission_handler的相关配置,请前往我的另外一篇文章【flutter】使用permission_handler配置android和 iOS的权限


二、代码示例

import 'dart:async';
import 'dart:io';
import 'dart:typed_data';
import 'package:dio/dio.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:image_gallery_saver/image_gallery_saver.dart';
import 'package:path_provider/path_provider.dart';
import 'package:permission_handler/permission_handler.dart';
import 'dart:ui' as ui;

class HomePage extends StatefulWidget {
   
  const HomePage({
   Key? key}) : super(key: key);

  @override
  State<HomePage> createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
   
  final GlobalKey _globalKey = GlobalKey();

  @override
  Widget build(BuildContext context) {
   
    return Scaffold(
      appBar: AppBar(
        title: const Text('保存图片到本地'),
      ),
      body: Lis
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值