HXPhotoPicker icon indicating copy to clipboard operation
HXPhotoPicker copied to clipboard

去相册选择图片,在相机胶卷里面有拍照功能的情况下,点击取消或者返回,会卡住主线程。

Open dongpeng66 opened this issue 3 years ago • 2 comments

bug提交前阅读 1.请先阅读【相关问题】,里面有常见问题的解决方案; 2.请先搜索已有的Issues,尝试找到相同问题的讨论; 3.请先阅读相关类的API、源码,尝试从源码找到答案; 4.如果以上步骤都未能解决你的疑问,欢迎提交ISSUE;

bug描述 去相册选择图片,在相机胶卷里面有拍照功能的情况下,点击取消或者返回,会卡住主线程,iOS12以上不会有问题。 设置photoManager.configuration.openCamera=NO;可以解决问题。

版本号 1.HXPhotoPicker版本号:3.1.9 2.手机系统版本号:9.3.1 3.手机型号:iPhone 6s

复现步骤

  1. 遇到问题的相关效果、类是:? 2.具体的操作步骤是:?

截图、GIF 提供bug出现时的截图或者GIF。

dongpeng66 avatar Jun 10 '21 09:06 dongpeng66

Ios12以下可以设置cell不预览相机

SilenceLove avatar Jun 10 '21 11:06 SilenceLove

你好,我根据这个文章如下文章: https://stackoverflow.com/questions/11905505/avcapturesession-stop-running-take-a-long-long-time

修改了HXPhotoViewController.m的这个方法,去提前AVCaptureSession stopRunning,点击取消解决了卡主线程的问题,但是返回相册还是会卡住主线程,大佬目前还没有修改返回相册按钮的事件,大佬这样子修改可行否?

(void)didCancelClick { if (self.cameraCell.startSession && self.cameraCell) { [self.cameraCell starRunning]; } if (self.manager.configuration.albumShowMode == HXPhotoAlbumShowModePopup) { if (self.manager.configuration.photoListChangeTitleViewSelected) { self.manager.configuration.photoListChangeTitleViewSelected(NO); } [self.manager cancelBeforeSelectedList]; } if ([self.delegate respondsToSelector:@selector(photoViewControllerDidCancel:)]) { [self.delegate photoViewControllerDidCancel:self]; } if (self.cancelBlock) { self.cancelBlock(self, self.manager); } self.manager.selectPhotoing = NO; BOOL selectPhotoCancelDismissAnimated = self.manager.selectPhotoCancelDismissAnimated; [self dismissViewControllerAnimated:selectPhotoCancelDismissAnimated completion:^{ if ([self.delegate respondsToSelector:@selector(photoViewControllerCancelDismissCompletion:)]) { [self.delegate photoViewControllerCancelDismissCompletion:self]; } }]; }

dongpeng66 avatar Jun 10 '21 12:06 dongpeng66