颤振 - 使用 image_picker 处理方法调用和 already_active 异常

Posted

技术标签:

【中文标题】颤振 - 使用 image_picker 处理方法调用和 already_active 异常【英文标题】:flutter - getting Failed to handle method call and already_active exception using image_picker 【发布时间】:2019-08-13 17:21:03 【问题描述】:

我正在使用image_pickerflutter 包,但是当我像定义的示例一样使用它时,它不起作用。如果我第一次调用该函数:

ImagePicker.pickImage(source: ImageSource.camera, maxWidth: 600);

我收到此错误,但什么也没发生:

PlatformException(error, Attempt to invoke virtual method 'android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)' on a null object reference, null)

当我第二次调用它时,我得到了这个错误:

PlatformException(already_active, Image picker is already active, null)

有时它甚至不记录任何错误,只记录并且什么也不做:

D/ViewRootImpl@abff78a[MainActivity](31877): MSG_WINDOW_FOCUS_CHANGED 0
D/ViewRootImpl@abff78a[MainActivity](31877): MSG_WINDOW_FOCUS_CHANGED 1
D/ViewRootImpl@abff78a[MainActivity](31877): Relayout returned: old=[0,0][1080,1920] new=[0,0][1080,1920] result=0x1 surface=valid=true 3524769792 changed=false

谁能帮我解决这个问题?

【问题讨论】:

这里也一样,它只发生在 Linux、模拟器 (API 28) 上。我也有一台 Mac,它在那里工作。不幸的是,我无法判断这是否发生在真实设备上,因为我目前没有 【参考方案1】:

这个问题只发生在旧版本的插件上。将 Flutter SDK 和 image_picker 插件更新到最新版本应该可以解决此问题。

【讨论】:

以上是关于颤振 - 使用 image_picker 处理方法调用和 already_active 异常的主要内容,如果未能解决你的问题,请参考以下文章

运行 image_picker 时我的新 android 应用程序崩溃(基于颤振飞镖)

颤振:“失去与设备的连接。”第二次使用 image_picker 从 iOS 上的图库中选择照片

在颤振插件 image_picker 示例中从图库中选择图像时内存增加

在颤振应用程序中添加 image_picker 插件后,Gradle Build 失败

无法使用 Flutter Web 的 image_picker 将文件上传到 Firebase 存储

在flutter中从image_picker包中打开相机会导致真实设备上的应用程序崩溃,但在模拟器(android)中运行良好