经过之前的facebook的SDK的安装我们现在终于可以开始我的广告之旅了,首先要知道的是我们这次接入的插件叫react-native-fbads,这款插件针对React Native的Facebook Audience SDK集成,可在iOS和Android上使用。拥有原生广告,插页式广告和横幅广告。
在使用这款插件之前有一个前提条件
- 必须已经在项目中集成了facebook的SDK否则的话就没法使用了
- 保持科学上网的方式。(在国内的普通网络可是看不到facebook的广告的)。
废话不多说我们马上入坑
首先按照惯例先下载插件
RN> = 0.40
react-native install react-native-fbads
RN <0.40
npm install install react-native-fbads@3.1.1 –save
然后安装连接插件
react-native link react-native-fbads
好的,搞定完上面这些我们可以进行测试了我们先react-native run-android
恩,出错了
这时我们打开我们项目的build.gradle文件,路径:android\app\build.gradle
在defaultConfig中添加multiDexEnabled true
defaultConfig {
minSdkVersion 16
targetSdkVersion 22
multiDexEnabled true //<--添加这一句
}
然后再run-android,完美运行
下面我们就开始对原生广告,插页式广告和横幅广告进行测试
横幅广告
首先我们要导入插件
import { BannerView } from ‘react-native-fbads’;
然后在页面中插入对应的便签
function ViewWithBanner(props) {
return (
<View>
<BannerView
placementId="YOUR_BANNER_PLACEMENT_ID"
type="standard"
onPress={
() => console.log('click')}
onError={
(err) => console.log('error', err.nativeEvent)}
/>
</View>
);
}
横幅有3种尺寸可供选择:
- standard (BANNER_HEIGHT_50)
- large (BANNER_HEIGHT_90)
- rectangle (RECTANGLE_HEIGHT_250)
PS:如果想要获取正确的错误信息的话就应该要这么写err.nativeEvent
,不然的话你会返回到一个奇怪的东西,就像这样
好了,现在我们试一下
如果在测试横幅广告的时候出现这个错误的话,不要慌我们首先执行以下操作