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

React Native集成AWS Amplify Gen1认证组件构建失败,报react-native-pager-view错误

解决React Native集成AWS Amplify Gen1认证时的构建失败问题

核心问题分析

你当前的依赖存在两个关键冲突:

  1. Amplify版本混用:@aws-amplify/ui-react-native@2.4.2(Gen1)和aws-amplify@6.13.2(Gen2)属于不同世代的Amplify框架,两者依赖体系完全不兼容,这是导致构建冲突的主要原因。
  2. react-native-pager-view版本不匹配:你使用的react-native-pager-view@6.6.1与React Native 0.74.5的gradle配置存在兼容性问题,引发Manifest处理失败。

分步解决方案

1. 统一Amplify Gen1依赖版本

  • 卸载Gen2版本的Amplify核心包:
    npm uninstall aws-amplify
    
  • 安装与Gen1 UI组件匹配的Amplify核心包(推荐v5.x稳定版):
    npm install aws-amplify@^5.3.11
    

2. 调整react-native-pager-view版本

修改package.json中react-native-pager-view的版本为RN 0.74.5兼容的稳定版:

"react-native-pager-view": "^6.3.1"

然后执行依赖安装:

npm install

3. 清理缓存并重新构建

  • 清理npm缓存:
    npm cache clean --force
    
  • 进入Android项目目录清理构建缓存:
    cd android && ./gradlew clean
    
  • 回到项目根目录重新运行项目:
    npx react-native run-android
    

4. 确认Amplify初始化代码(Gen1写法)

确保你的App初始化代码使用Gen1的配置方式,避免与Gen2混淆:

import Amplify from 'aws-amplify';
import awsconfig from './src/aws-exports'; // 你的Amplify配置文件

Amplify.configure(awsconfig);

额外排查点

如果构建仍失败,查看完整错误日志(运行npx react-native run-android时会输出详细信息),常见的Manifest冲突原因包括:

  • minSdkVersion不统一:在android/build.gradle中确保所有模块的minSdkVersion设置为21(RN 0.74默认值)
  • 权限声明冲突:检查第三方库的AndroidManifest.xml是否有重复权限或版本不兼容的声明,可通过android/app/src/main/AndroidManifest.xml中的tools:replace属性解决冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 21:33:12