博览会:Facebook原生广告未显示图片

时间:2019-05-25 21:32:28

标签: expo facebook-audience-network

运行测试后,广告文字正确显示,并显示:

您的广告集成有效。哇!

但是没有图像显示。我以为<AdMediaView>表演可以完成工作,但没有。我的代码有什么问题?

App.js

import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import { FacebookAds } from 'expo';
FacebookAds.AdSettings.addTestDevice(FacebookAds.AdSettings.currentDeviceHash);

const adsManager = new FacebookAds.NativeAdsManager('my id', 1);
import AdComponent from './fbads.js';

export default class App extends React.Component {
  render() {
    return (
      <View>
        <Text>Hello!!</Text>
        <View>
        <AdComponent adsManager={adsManager} />
      </View>

      </View>
    );
  }
}

fbads.js

import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import { FacebookAds } from 'expo';
const { AdTriggerView, AdMediaView } = FacebookAds;


class AdComponent extends React.Component {
  render() {
    return (
      <View>
        <AdMediaView />
        <AdTriggerView>
          <Text>{this.props.nativeAd.bodyText}</Text>
        </AdTriggerView>
      </View>
    );
  }
}
export default FacebookAds.withNativeAd(AdComponent);

2 个答案:

答案 0 :(得分:1)

好的,今天我又遇到了这个问题。经过长时间的测试,我发现要显示图像,我必须同时放置AdIconViewAdMediaView

这有效:

<AdIconView style={{width: 50, height: 50}} />
<AdMediaView style={{width: 300, height: 200}} />
<AdTriggerView>
    <Text>a{this.props.nativeAd.bodyText}</Text>
</AdTriggerView>

这不起作用:

<AdMediaView style={{width: 300, height: 200}} />
<AdTriggerView>
    <Text>a{this.props.nativeAd.bodyText}</Text>
</AdTriggerView>

都不是:

<AdIconView style={{width: 50, height: 50}} />
<AdTriggerView>
    <Text>a{this.props.nativeAd.bodyText}</Text>
</AdTriggerView>

答案 1 :(得分:0)

对于仍然遇到此问题的任何人,请尝试设置AdMediaView的固定宽度和高度,然后该宽度和高度将在之后显示。例如:

<AdMediaView style={{width: 400, height: 300}}/>

同一件事也适用于AdIconView:

<AdIconView style={{width: 50, height: 50}}/>