【问题标题】:How to enable animated webp (awebp) in React Native Fast Image?如何在 React Native Fast Image 中启用动画 webp(webp)?
【发布时间】:2021-11-18 01:10:53
【问题描述】:

我们有animated webp files working great in our React Native app 使用默认的<Image> 组件。

我们希望从 react-native-fast-image 中内置的一些缓存附加功能中受益。但是,它适用于所有除了 awebp 文件;我们有很多。

the github issues 中有很多解决方案,但我们无法让它们中的任何一个起作用。

是否有经过验证的方法可以让 awebp 正常工作?

【问题讨论】:

    标签: react-native webp react-native-fast-image


    【解决方案1】:

    我为 Expo 创建了一些配置插件(基于您的工作),这可能会有所帮助:

    https://gist.github.com/Hirbod/07c6641970c9406ff35a7271dda1f01c

    使用 FastImage 添加对动画 webP 的支持非常简单。配置插件只需在 AppDelegate.m 中添加 3 行代码,在 android/app/build.gradle 中添加一个实现行

    这就是使用 FastImage 的动画 webp 支持。

    TL;DR:

    Android:将以下内容添加到您的 android/app/build.gradle

    implementation "com.github.zjupure:webpdecoder:2.0.4.12.0
    

    iOS:打开您的 AppDelegate.m 并在第一个 AppDelegate.h 导入之后,添加以下内容:

    #import "SDImageCodersManager.h"
    #import <SDWebImageWebPCoder/SDImageWebPCoder.h>
    

    向下滚动一点(同一个文件),直到找到这个启动标识符:

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    

    并在 {: 之后添加以下内容:

    [SDImageCodersManager.sharedManager addCoder: SDImageWebPCoder.sharedCoder];
    

    就是这样。重建你的项目(重新运行 gradlew),你就有了 FastImage 动画 webP 支持。

    P.S:当您需要 Android 上的 APNG + 动画 webP 支持时,请添加此实现:

     implementation 'com.github.penfeizhou.android.animation:glide-plugin:2.17.0'
    

    【讨论】:

      猜你喜欢
      • 2017-12-08
      • 2017-12-18
      • 2020-05-06
      • 2015-11-29
      • 2020-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-13
      相关资源
      最近更新 更多