React Native + Expo自定义字体加载异常(Android端报错)
解决Android端加载Expo Google字体时expo-file-system.downloadAsync报错的问题
以下是针对你遇到的问题的具体解决步骤:
检查版本兼容性
确认你的Expo SDK版本与@expo-google-fonts/montserrat、@expo-google-fonts/mulish以及expo-file-system的版本匹配。不同SDK版本对依赖包的要求不同,调整版本后运行npm install或yarn install更新依赖。重新安装expo-file-system
执行命令npx expo install expo-file-system确保该模块被正确安装,安装完成后重启Expo开发服务器。清理项目缓存
运行npx expo start --clear清理Expo缓存;若使用bare workflow,可手动删除Android项目的android/app/build文件夹,再重新编译项目。Bare Workflow下的原生依赖链接
如果你使用的是bare workflow,执行以下命令完成原生依赖链接:npx react-native link expo-file-system cd android && ./gradlew clean之后重新构建Android项目。
备选方案:本地加载字体
如果上述方法无效,可将字体文件下载到本地项目的assets/fonts目录,通过本地路径加载字体,避免远程下载依赖:import { useFonts } from 'expo-font'; const [fontsLoaded, fontError] = useFonts({ Montserrat_100Thin: require('./assets/fonts/Montserrat-Thin.ttf'), Montserrat_200ExtraLight: require('./assets/fonts/Montserrat-ExtraLight.ttf'), // 其他字体依次按此格式添加 });
内容的提问来源于stack exchange,提问作者Fahad Haque
相关产品推荐
相关产品推荐

