Expo CLI开发React Native应用,EAS构建后LineChart页面崩溃求助
解决EAS Build后react-native-chart-kit图表页面崩溃的方案
1. 核对依赖版本兼容性
react-native-chart-kit依赖react-native-svg,版本不匹配是这类崩溃的常见原因。先确认你的Expo SDK对应的react-native-svg版本(比如SDK 49对应~13.9.0),再执行以下操作:
- 用
npm list react-native-svg检查当前安装版本 - 版本不匹配的话,卸载重装对应版本:
npm uninstall react-native-svg npm install react-native-svg@<对应版本号>
2. 补全Android ProGuard规则
你之前添加的规则不够完整,在android/app/proguard-rules.pro文件中补充以下内容:
-keep class com.horcrux.svg.** { *; } -keep class com.horcrux.svg.R$* { *; } -keep public class com.horcrux.svg.SvgViewManager { *; } -keep public class com.horcrux.svg.SvgView { *; }
同时确保eas.json的生产构建配置中启用了ProGuard:
{ "build": { "production": { "android": { "buildType": "app-bundle", "proguard": true } } } }
3. 执行Expo预构建
react-native-chart-kit依赖原生模块,EAS Build需要预构建生成原生配置文件,执行:
npx expo prebuild --clean
将生成的android/和ios/目录提交到版本控制后,重新触发EAS Build。
4. iOS端额外配置检查
如果iOS构建后崩溃:
- 进入
ios目录执行pod install,确保依赖正确安装 - 在Xcode的
Build Settings中,将Dead Code Stripping设置为NO,避免SVG相关符号被误删除
5. 查看崩溃日志定位问题
- Android端用
adb logcat *:E抓取错误日志,查看具体报错的类或方法 - iOS端通过Xcode连接设备,查看崩溃报告的堆栈信息,精准定位问题
内容的提问来源于stack exchange,提问作者Mike Gerard Suico
相关产品推荐
相关产品推荐

