Wei Wang

Results 259 comments of Wei Wang

When using `UIImageView` to display a gif, by default the whole gif frames are loaded into the memory. If you have a gif with huge frames or large in size,...

> • What is the expected syntax for excluding multiple directories? > • Does --exclude accept comma-separated values, or must it be repeated for each path? I guess you can...

``` "NewFeature.writingTools.label" = "已为 Apple 智能预备好"; "NewFeature.writingTools.description" = "即将来到的 Apple 智能写作工具将正确工作。"; ```

After some investigation, this issue occurs on iOS 18 simulators when using an x86_64 build (i.e., with `EXCLUDED_ARCHS=arm64` or a similar configuration in the build settings). As a workaround, maybe...

@Arlexovincy 如果我没有记错的话,从网络下载的 Live Photo 应该是分成静态 image (HEIC) 和一个视频 (MOV) 的,所以下载和缓存也许要分别处理。能分享一些你们使用 Live Photo 的实际场景么(比如你们的 Live Photo 的来源,以及server是如何下发这些资源的),这样可能可以对设计更合理的API有所帮助。 感谢。

依据 URL 或者甚至 response data 来决定内部使用的 view 这件事情,相对来说超出了 Kingfisher 的最初设计目标。 可能可以考虑为 `PHLivePhotoView` 添加一组类似 `kf` 的 extension 方法来快速下载/缓存资源和设置图片。对应地,在你们 app 中 server 应该持有“某张图片是 Live Photo” 的信息:在 Collection View 的 cell 中使用 `UIImageView`...

当然..如果确实有需要在 Cell 里就混杂着显示 Live Photo 的话,也可以考虑通过向 server 请求 URL 的时候,让 server 的返回里带上对应图片是 Live Photo 的 metadata,这样就可以在创建 cell 时直接选择使用 `UIImageView` 还是 `PHLivePhotoView`。

还有一些工作要做,最后的一部分重构 补充文档之类的。着急的话可以先用master试试,也欢迎反馈和意见。

@HIIgor 看起来这张图片和对应的视频并不是严格按照 Apple 的方式导出的。 我尝试了一个非常简陋的实现(在[这个 branch](https://github.com/onevcat/Kingfisher/tree/experiment/live-photo-meta) 可以找到。别用,从缓存加载时会 crash),但是发现如果都按照这个方式的话,看起来性能上退化会比较严重:在 iPhone 16 上视频需要1.6s左右,图片需要0.3秒左右进行处理。可能不太能无脑为所有图片/视频都进行添加。我看一下有没有什么办法能优化和检查一下。如果最后能做到不影响性能的话,会考虑添加到内置;但是如果没有特别好的方式的话,就只能给一个 delegate 让用户自行判断和添加了。 最后还是建议这部分 meta data 的处理,应该还是要预先做好(不论是在服务器还是在上传方的客户端)。在下载和显示端,还是希望能获取到可以直接显示的内容。还请参考。

@zkhCreator 感谢分享,情况了解了。可以问一下这么做的性能上的表现如何么?比如对于视频的 `addIdentifier` 需要多久。不知道是否方便分享一下 `addIdentifier(_:toMovieData:)` 的实现。 另外,其实可以考虑实现一下这个 delegate,https://github.com/onevcat/Kingfisher/blob/master/Sources/Networking/ImageDownloaderDelegate.swift#L75-L96 可能相比 subclass 一个 downloader,会更好看一些。