【发布时间】:2021-01-20 06:44:05
【问题描述】:
我正在开发一个需要用户从图库中选择图像的移动应用程序。
我正在使用 image_picker:^0.6.7+11,这是我的代码:
if (await Permission.photos.request().isGranted) {
try {
final image =
await ImagePicker().getImage(source: ImageSource.gallery);
if (image != null) {
photo.clearData();
File _image = File(image.path);
photo.addOriginal(_image);
} else {
print('no image selected');
}
} on PlatformException catch (e) {
print('Platform exception $e');
} catch (e) {
print('Unknown error: $e');
}
}
在安卓模拟器中,一切正常。在 iOS 模拟器中,我可以选择一张图片,但如果我尝试选择第二张图片,则应用程序崩溃并“与设备失去连接”。在运行选项卡中打印 - 但没有错误。
问题:如何解决此问题,以便我可以返回图库并在 iOS 上多次选择不同的图像?
在调试时我遇到了这个:
PlatformException(multiple_request, Cancelled by a second request, null, null)
我已经在这里找到了尽可能多的类似问题,GitHub 等...我有:
- 升级的颤振
- 升级的 pub 文件
- 扑干净
- 在 Xcode 中清理和构建
- 在颤振代码中添加了“imageCache.clear()”
- 在 android studio 中使缓存失效并重新启动
- flutter doctor -v:未发现问题
- 检查了权限(info.plist 并添加了 permission_handler 包)
- 重启模拟器
- 已删除模拟器中的所有内容和设置
- 使用断点进行调试会奇怪地阻止问题发生几次,然后在几次选择后应用再次崩溃¯\(ツ)/¯
我确信它是直截了当的,但我觉得我已经用尽了所有的选择,不知道从这里去哪里。
【问题讨论】:
-
我也有同样的问题,请问有解决办法吗?
-
这似乎是 iOS 14 模拟器中的一个错误......我让它在我的物理设备上运行没有任何问题 (13.3.1)
-
非常感谢。我试试看
-
同样的问题。热重载后,它再次为一张图像工作正常。
-
@goh 你有没有设法得到这个?对我来说得到完全相同的行为。
标签: ios flutter imagepicker