《React Native》Google Admob广告环境搭建

根据https://github.com/sbugert/react-native-admob教程

可以使用npm或Yarn安装:

npm:

npm i --save react-native-admob@next

Yarn:

yarn add react-native-admob@next

安装完成后,在终端执行以下命令:

react-native link

 测试横幅广告添加以下代码:

完成上面步骤后,在终端执行以下命令

react-native run-android

效果:

《React Native》Google Admob广告环境搭建_第1张图片

运行IOS

react-native run-ios

结果出现以下错误 

这是因为IOS还需要安装framework和Google Admob SDK,所以才会报“GoogleMobileAds not found ”错误

这里我教一下新手们如何解决这些问题

首先,因为这是Admob错误,我们把错误信息复制到GitHub上react-native-admob项目的issues里搜索,如图

 《React Native》Google Admob广告环境搭建_第2张图片

点击链接如图 

 《React Native》Google Admob广告环境搭建_第3张图片

然后按照网友所说的方法操作

 《React Native》Google Admob广告环境搭建_第4张图片

在谷歌搜索GoogleMobileAds.framework 

 《React Native》Google Admob广告环境搭建_第5张图片

下载包

《React Native》Google Admob广告环境搭建_第6张图片

打开Xcode 

 

《React Native》Google Admob广告环境搭建_第7张图片

打开项目 

《React Native》Google Admob广告环境搭建_第8张图片

将下载解压后的包拖入项目 

《React Native》Google Admob广告环境搭建_第9张图片

《React Native》Google Admob广告环境搭建_第10张图片

然后安装cocoapods。 执行以下命令,发现老半天卡着不动

《React Native》Google Admob广告环境搭建_第11张图片

解决这个问题的办法,首先更换镜像,在终端执行命令:

 gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

 

《React Native》Google Admob广告环境搭建_第12张图片

然后再次安装cocoapods,发现还是报错 

《React Native》Google Admob广告环境搭建_第13张图片

《React Native》Google Admob广告环境搭建_第14张图片

 直接把错误信息复制粘贴到百度搜索

 《React Native》Google Admob广告环境搭建_第15张图片

《React Native》Google Admob广告环境搭建_第16张图片

然后按照教程更新gem:

sudo gem update --system

gem更新后, 再次安装cocopods

sudo gem install cocoapods

出现以下错误 

《React Native》Google Admob广告环境搭建_第17张图片

《React Native》Google Admob广告环境搭建_第18张图片

我们按照教程执行以下命令安装即可:

sudo gem install -n /usr/local/bin cocoapods

cocoapods安装完后,用Westorm在项目终端执行以下命令:

cd ios
pod init 

然后在ios目录下会自动生成Podfile文件

修改Podfile代码如图 

pod 'Google-Mobile-Ads-SDK'

 《React Native》Google Admob广告环境搭建_第19张图片

完成后,执行以下代码进行安装:

pod install --repo-update

 

《React Native》Google Admob广告环境搭建_第20张图片

 安装完成后,运行以下命令:

react-native run-ios

《React Native》Google Admob广告环境搭建_第21张图片

 

到这里,Admob环境安装完成。

 

你可能感兴趣的:(react,native)