繁体   English   中英

react-native-media-meta 在调试时工作但在发布 APK 时崩溃

[英]react-native-media-meta Working while debug but crashing on Release APK

要为我们的react-native应用程序读取选定的媒体元数据,我们使用了react-native-media-meta 它在发布的 APK 中导致问题,但在调试中工作正常。

包链接: https : //github.com/mybigday/react-native-media-meta我在读取媒体元数据方面取得了成功,应用程序在调试中适用于iOSAndroid 在发布 APK 时,应用程序抛出如下Exception

java.lang.NoSuchFieldError: no "J" field "mNativeContext" in class "Lwseemann/media/FFmpegMediaMetadataRetriever;" or its superclasses at wseemann.media.FFmpegMediaMetadataRetriever.native_init(Native Method) at wseemann.media.FFmpegMediaMetadataRetriever.<clinit>(Unknown Source:43) at com.mybigday.rnmediameta.RNMediaMeta.getMetadata(Unknown Source:19) at com.mybigday.rnmediameta.RNMediaMeta.access$000(Unknown Source:0) at com.mybigday.rnmediameta.RNMediaMeta$1.run(Unknown Source:8)

在发布中只有Exception存在。 我从这里遵循在react-native-media-meta用于Android特定库描述: https : //github.com/wseemann/FFmpegMediaMetadataRetriever#using-fmmr-in-your-application-android-studio

但是,如果我要发布基于 APK 的发布架构,它会给出相同的结果。 如果我为每个架构声明多个依赖项,则会产生dependancy duplication问题。

目前,这个单一问题是构建已发布的 Android APK 的障碍。 任何帮助将不胜感激,因为我如何克服这个问题。

类似问题:1. https://github.com/mybigday/react-native-media-meta/issues/22 2. https://github.com/wseemann/FFmpegMediaMetadataRetriever/issues/197

我刚刚通过在 progaurd-rules.pro 文件中添加这些行来解决这个问题

  • -保持类com.mybigday.** { *; }
  • -保持类com.mybigday.rnmediameta.** { *; }
  • -保持类 wseemann.media.** {*;}

它解决了发布版本中的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM