longitachi / ZLPhotoBrowser

Wechat-like image picker. Support select photos, videos, gif and livePhoto. Support edit image and crop video. 微信样式的图片选择器,支持预览/相册内拍照及录视频、拖拽/滑动选择,编辑图片/视频,支持多语言国际化等功能;
MIT License
4.77k stars 966 forks source link

ZLPhotoPreviewSheet 预览crash #907

Open yycc opened 4 months ago

yycc commented 4 months ago

bugly收集到崩溃

bugly问题描述

NSInternalInconsistencyException Invalid batch updates detected: the number of sections and/or items returned by the data source before and after performing the batch updates are inconsistent with the updates. Data source before updates = { 1 section with item counts: [21] } Data source after updates = { 1 section with item counts: [0] } Updates = [ ] Collection view: <UICollectionView: 0x110285000; frame = (0 0; 375 155); clipsToBounds = YES; gestureRecognizers = <NSArray: 0x303ec9080>; backgroundColor = <UIDynamicSystemColor: 0x3027b8c80; name = systemBackgroundColor>; layer = <CALayer: 0x3034b9c80>; contentOffset: {0, 0}; contentSize: {3896.2550696484577, 155}; adjustedContentInset: {0, 0, 0, 0}; layout: <ZLPhotoBrowser.ZLCollectionViewFlowLayout: 0x10a523aa0>; dataSource: <ZLPhotoBrowser.ZLPhotoPreviewSheet: 0x137316d80; frame = (0 0; 375 667); hidden = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x303ec1da0>; backgroundColor = UIExtendedGrayColorSpace 0 0; layer = <CALayer: 0x3033208e0>>>

崩溃堆栈

0 CoreFoundation _exceptionPreprocess + 164 1 libobjc.A.dylib _objc_exception_throw + 60 2 Foundation userInfoForFileAndLine 3 UIKitCore -[UICollectionView _Bug_Detected_In_Client_Of_UICollectionView_Invalid_Batch_Updates:] + 96 4 UIKitCore -[UICollectionView _endItemAnimationsWithInvalidationContext:tentativelyForReordering:animator:collectionViewAnimator:] + 8676 5 UIKitCore -[UICollectionView _updateRowsAtIndexPaths:updateAction:updates:] + 396 6 UIKitCore -[UICollectionView reloadItemsAtIndexPaths:] + 52 7 UIKit -[UICollectionViewAccessibility reloadItemsAtIndexPaths:] + 96 8 ZLPhotoBrowser $s14ZLPhotoBrowser0A12PreviewSheetC15handleDataArray33_4439292D059C8974C4CA01CCCA08BFA7LL8newModelyAA0aO0CtFySbcfU0 + 216 9 ZLPhotoBrowser $sSbIegy_SbIeyBy_TR + 40 10 UIKitCore -[UICollectionView _updateAnimationDidStop:finished:] + 1224 11 UIKitCore _147-[UICollectionView _startViewAnimationsWithContext:oldVisibleViews:reorderedViewAttributesTable:viewAnimator:viewAnimationsCompletedDispatchGroup:]_block_invoke + 36 12 UIKitCore _47-[UICollectionViewAnimation startWithAnimator:]_block_invoke3 + 272 13 UIKitCore UIVIEW_IS_EXECUTING_ANIMATION_COMPLETION_BLOCK + 36 14 UIKitCore -[UIViewAnimationBlockDelegate _didEndBlockAnimation:finished:context:] + 624 15 UIKitCore -[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 436 16 UIKitCore -[UIViewAnimationState animationDidStop:finished:] + 192 17 UIKit -[UIViewAnimationStateAccessibility animationDidStop:finished:] + 260 18 XCTAutomationSupport XCTAnimationDidStop + 24 19 QuartzCore run_animation_callbacks(void*) + 132

Info

ZLPhotoBrowser version: e.g. 7.0.0 Device: e.g. iPhone SE Device version: e.g. 17.5.1 Xcode version: e.g. Xcode 15.1

Configuration code of ZLPhotoConfiguration

        let config = ZLPhotoConfiguration.default()
        config.allowSelectImage = true
        config.allowSelectVideo = false
        config.allowSelectGif = false
        config.allowSelectLivePhoto = false
        config.allowSelectOriginal = false
        config.cropVideoAfterSelectThumbnail = false
        config.allowEditVideo = false
        config.allowMixSelect = false
        config.maxSelectCount = 1

麻烦大神帮忙看一下问题,感谢。

longitachi commented 4 months ago

必现吗?有复现路径吗?

yycc commented 4 months ago

是偶现的,暂时没有发现必现路径,我再观察一下是否能重现。感谢大神回复!