首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flutter: Error: MissingPluginException(没有在通道插件上找到方法getTemporaryDirectory的实现)

Flutter: Error: MissingPluginException(没有在通道插件上找到方法getTemporaryDirectory的实现)
EN

Stack Overflow用户
提问于 2021-01-19 12:27:00
回答 2查看 646关注 0票数 2

我正在使用Flutter-web,我想导出一个pdf。我正在使用pdf格式包,并试图从它们的文档中实现一个简单的示例。具体来说,我有一个名为export_pdf.dart的文件,其中的代码如下所示。

代码语言:javascript
复制
import 'package:pdf/pdf.dart';
import 'package:pdf/widgets.dart';
import 'package:universal_io/io.dart';
import 'package:path_provider/path_provider.dart';

exportPdf() async {
  final pdf = Document();

  pdf.addPage(Page(
      pageFormat: PdfPageFormat.a4,
      build: (Context context) {
        return Center(
          child: Text("Hello World"),
        ); // Center
      })); // Page

  final output = await getTemporaryDirectory();
  final file = File("${output.path}/example.pdf");
  await file.writeAsBytes(await pdf.save());
}

当我通过单击一个按钮调用exportPdf()函数时,我将得到以下错误。

未知(承诺)错误:MissingPluginException(没有为通道插件上的getTemporaryDirectory方法找到实现)

我已经寻找这个问题很长时间了,但没有解决办法解决这个问题。

即使导入了path_provider包,getTemporaryDirectory()也不会被调用,就像它不存在一样。

我还需要提到,我使用的是universal_io,而不是dart:io,因为我使用的是flutter_web

此错误将显示在我调用的每个函数中,并存在于path_provider/path_provider.dart文件中。我还在path_provider/path_provider.dart中添加了一个简单的打印函数,并得到一个方法找不到的错误。

谢谢您抽时间见我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-01-19 13:48:41

我发现当前的软件包不支持在web中保存文件,建议使用打印插件打印或共享该文件。

票数 0
EN

Stack Overflow用户

发布于 2021-01-19 12:36:28

运行以下命令

代码语言:javascript
复制
flutter clean
flutter pub get
flutter run

确保在第一个命令之后,删除build文件夹。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65791493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档