【发布时间】:2019-07-04 13:18:00
【问题描述】:
我正在使用 Facebook 广告。我想将原生广告放到我的 react native expo 应用程序中,但出现错误。当我放置简单的横幅时,一切正常。它给了我这个错误: 未捕获的错误:java.lang.String 无法转换为 java.lang.Double 我试图像这样导入: 从“expo-ads-facebook”导入 * 作为 FacebookAds; 但它给了我这个错误: 无法从“node_modules/expo-ads-facebook/build/withNativeAd.js”解析“@unimodules/core”
我做错了什么?
// pageScreen.js
import React from 'react';
import { FacebookAds } from 'expo'
import AdScreenFacebook from './AdScreenFacebook'
class AdScreen extends React.Component {
render () {
return (
<AdScreenFacebook adsManager={adsManager} adChoicePosition="topLeft" expandable={false} />
);
}
}
// AdScreenFacebook.js
import React from 'react';
import { FacebookAds } from 'expo'
const { AdIconView, AdMediaView } = FacebookAds;
const adsManager = new FacebookAds.NativeAdsManager("2272791379702600_2272795453035526", "1");
class AdScreenFacebook extends React.Component {
render () {
return (
<View>
<AdMediaView />
<AdTriggerView>
<Text>{this.props.nativeAd.bodyText}</Text>
</AdTriggerView>
</View>
);
}
}
export default FacebookAds.withNativeAd(AdScreenFacebook);
export default createStackNavigator(
{
Main: {
screen: AdScreen,
},
AdScreenFacebook: {
screen: AdScreenFacebook,
}
},
{
initialRouteName: 'Main',
}
);
【问题讨论】:
标签: react-native expo facebook-ads-api