更新RN版本后Android端打包APP问题解决

在升级react-native至0.61.0后,Android端面临诸多打包问题,包括gradle配置错误、RN API更新、依赖冲突、第三方库版本不兼容等。本文详细介绍了这些问题的种类、原因及解决方案,如更新gradle配置、替换弃用组件、解决依赖冲突,以及处理阿里云推送库和运行闪退问题。
摘要由CSDN通过智能技术生成

1 Android端问题概述

更新RN版本到0.61.0后,打包命令报错,报错原因往往来源于第三方库,因为第三方库的版本还是比较老旧的版本,它们没有适配新android版本或新的构建工具。当我们使用新的构建版本去构建APP时,就会发生很多错误。

 

2 构建APP的问题种类

2.1 gradle配置不正确

可用init命名初始化一个新RN版本的项目,参考里边的gradle配置,然后更改自己项目的gradle配置。

 

2.2 RN迭代API或摒弃组件

1、react-native新版本不再支持ListView组件,若项目存在ListView组件的引用会报错。

 

2、WebView组件(导致APP报错不能正常运行)

错误信息:Invariant Violation: WebView has been removed from React Native. It can now be installed and imported from 'react-native-webview' instead of 'react-native'。

错误原因:新版本react-native剔除了WebView组件,把它放到了react-native-webview库当中。引用WebView组件须从react-native-webview库获取。

 

3、RN新版本移除了AsyncStorage的API,将其放到了@react-native-community/async-storage库当中。

错误信息:AsyncStorage has been extracted from react-native core and will be removed in a future release. It can now be installed and imported from '@react-native-community/async-storage' instead of 'react-native'. See https://github.com/react-native-community/react-native-async-storage

错误原因:RN新版本移除了AsyncStorage的API,将其放到了@react-native-community/async-storage库当中。

解决办法:

(1)yarn add @react-native-community/async-storage

(2)import AsyncStorage from '@react-native-community/async-storage';

 

2.3 依赖冲突

1、android库版本的冲突;

2、第三方库所依赖jar包的冲突。

 

2.4 第三方库版本老旧,不能兼容新

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值