dart - Flutter - 找不到 'Window_sendPlatformMessage'(4 个参数)

标签 dart flutter dart-isolates

我正在使用 Flutter 开发一个应用程序,它可以拍摄图像并允许用户将其保存在图库中。

我正在使用 image_picker_saver插件来保存它。

一开始我在主线程中调用保存图像的方法,但我意识到这真的很慢,现在我试图把它放在一个新的独立线程中,但我总是遇到同样的错误,所以,我的问题是:如何在新的独立线程中调用保存图像的方法?

我的代码是这样的:

Main.dart


    class _AkkaMark extends State<CameraUpload>{
    .
    .
    .
        void _clickSaveImage() {
          compute(saveImage, _imageFile).then((Future<String> futurePath) {
              futurePath.then((String path){
                _imageFile = new File(path);
              });
          });
        }
    .
    .
    .
    }

toCompute.dart

    Future<String> saveImage(File image) async {

      return await ImagePickerSaver.saveFile(fileData: image.readAsBytesSync());

    }

我试图更改代码试图定位错误,但总是一样:


    E/flutter (22602): [ERROR:flutter/runtime/dart_isolate.cc(717)] Isolate (413787440) 'main.dart:_spawn()' exited with an error
    E/flutter (22602): [ERROR:flutter/shell/common/shell.cc(184)] Dart Error: Unhandled exception:
    E/flutter (22602): error: native function 'Window_sendPlatformMessage' (4 arguments) cannot be found
    E/flutter (22602): #0      Window.sendPlatformMessage (dart:ui/window.dart:811:9)
    E/flutter (22602): #1      BinaryMessages._sendPlatformMessage (package:flutter/src/services/platform_messages.dart:40:15)
    E/flutter (22602): #2      BinaryMessages.send (package:flutter/src/services/platform_messages.dart:88:12)
    E/flutter (22602): #3      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:286:49)
    E/flutter (22602): <asynchronous suspension>
    E/flutter (22602): #4      ImagePickerSaver.saveFile (package:image_picker_saver/image_picker_saver.dart:77:38)
    E/flutter (22602): <asynchronous suspension>
    E/flutter (22602): #5      saveImage (package:AKKAmark/toCompute.dart:113:35)
    E/flutter (22602): <asynchronous suspension>
    E/flutter (22602): #6      _IsolateConfiguration.apply (package:flutter/src/foundation/isolates.dart:88:16)
    E/flutter (22602): #7      _spawn.<anonymous closure> (package:flutter/src/foundation/isolates.dart:96:30)
    E/flutter (22602): #8      Timeline.timeSync (dart:developer/timeline.dart:168:22)
    E/flutter (22602): #9      _spawn (package:flutter/src/foundation/isolates.dart:93:12)
    E/flutter (22602): #10     _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:292:17)
    E/flutter (22602): #11     _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)

有人知道吗?提前致谢

编辑

我把问题放在了 GitHub 上,基本上插件只能在主 UI 线程中使用。

'Window_sendPlatformMessage' (4 arguments) cannot be found

最佳答案

我把问题放在了 GitHub 上,基本上插件只能在主 UI 线程中使用。

'Window_sendPlatformMessage' (4 arguments) cannot be found

关于dart - Flutter - 找不到 'Window_sendPlatformMessage'(4 个参数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54127158/

相关文章:

dart - 如何在 Flutter 中重建 AnimatedWidget

ios - TestLab for iOS 中的 Flutter Integration 测试 - Use cases is not divided in iOS

java - android 启动画面图像小

dart - 正确杀死新产生的分离株

dart - 如何将某人的用户 ID 存储在我的 friend 集合中以及如何使用带有 flutter 的 firestore 检索该用户的数据?

flutter - 当前版本不满足最低版本要求——华为Account Kit集成【Flutter】

android - `flutter config --android-sdk/opt/android-sdk/` 在 arch linux 上无法工作我该如何配置?

communication - Dart 作为 worker 隔离

multithreading - 使用列表时 Dart 隔离非常慢

gridview - flutter - 在 gridview 上换行时如何设置宽度?