You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装react-native-lottie-splash-screen后遇:app:checkDebugDuplicateClasses错误求助

解决react-native-lottie-splash-screen的Android构建错误

问题本质

你遇到的构建错误核心是第三方包的Android模块配置未适配新版Android Gradle插件。错误日志明确提示:

Task :react-native-lottie-splash-screen:processDebugManifest
package="org.devio.rn.splashscreen" found in source AndroidManifest.xml: /Applications/Senior Aid/MobileApp/senioraid/node_modules/react-native-lottie-splash-screen/android/src/main/AndroidManifest.xml.
Setting the namespace via the package attribute in the source AndroidManifest.xml is no longer supported, and the value is ignored.
Recommendation: remove package="org.devio.rn.splashscreen" from the source AndroidManifest.xml: /Applications/Senior Aid/MobileApp/senioraid/node_modules/react-native-lottie-splash-screen/android/src/main/AndroidManifest.xml.

新版插件已不再支持通过AndroidManifest.xml的package属性设置命名空间,这个包的配置没跟上,才引发了重复类检查错误。

直接修改node_modules可行吗?

可以临时解决问题,但不是长久方案:

  • 临时修复步骤:找到上述路径的AndroidManifest.xml文件,删除package="org.devio.rn.splashscreen"这一行,再重新执行npm run android即可正常构建。
  • 弊端:每次执行npm install、重新拉取依赖或更新包时,修改的内容会被覆盖,需要重复操作。

更稳妥的解决办法

1. 用patch-package打持久化补丁

这是社区常用的第三方包代码修改方案,修改记录会被保存,无需重复手动操作:

  • 安装依赖:npm install patch-package --save-dev
  • 修改完node_modules里的AndroidManifest.xml后,执行npx patch-package react-native-lottie-splash-screen,项目根目录会生成patches文件夹存储修改记录。
  • 在package.json的scripts中添加:"postinstall": "patch-package",这样每次npm install后会自动应用补丁。

2. 升级包到最新版本

去npm查看react-native-lottie-splash-screen的最新版本,若官方已修复该问题,直接执行:npm install react-native-lottie-splash-screen@latest,再尝试构建。

3. 替换为维护更活跃的库

如果这个包长期未更新,可考虑更换为react-native-splash-screen或expo-splash-screen(使用Expo时)这类维护状态更好的启动页库,避免后续兼容性问题。

内容的提问来源于stack exchange,提问作者SHASHANK SHUKLA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 15:12:33