在Expo项目中使用react-native-google-mobile-ads时遭遇报错
解决Expo Go中'RNGoogleMobileAdsModule'找不到的错误
错误原因
RNGoogleMobileAdsModule是react-native-google-mobile-ads库的原生模块,而Expo Go是预构建的通用客户端,不支持需要原生配置的第三方模块,因此直接在Expo Go中运行会触发该错误。
解决方案
使用Expo Dev Client构建自定义开发客户端
这是最可靠的解决方式,自定义客户端可以包含需要原生集成的模块:- 安装依赖:
npx expo install expo-dev-client - 在
app.config.js或app.json中配置Google Ads的应用ID:export default { expo: { // 其他配置 ios: { googleMobileAdsAppId: '你的iOS Ads App ID' }, android: { googleMobileAdsAppId: '你的Android Ads App ID' } } } - 构建自定义客户端:
- Android:
npx expo run:android - iOS:
npx expo run:ios
- Android:
- 使用构建好的自定义客户端启动项目:
npx expo start --dev-client
- 安装依赖:
验证依赖安装与配置
- 确认
react-native-google-mobile-ads已正确安装:npm install react-native-google-mobile-ads # 或 yarn add react-native-google-mobile-ads - 检查Expo配置文件中是否正确填写了Google Ads应用ID,确保没有拼写错误。
- 确认
清除项目缓存
执行以下命令清除缓存后重新启动:npx expo start --clear
内容的提问来源于stack exchange,提问作者Neil
相关产品推荐
相关产品推荐

