我正在创建一个React原生应用程序,在我的模拟器谷歌移动的广告(奖励测试广告)工作得很好.但当我在我的真实的设备上测试应用程序(个人手机)然后奖励广告不工作,它崩溃了应用程序,只有横幅广告在真实设备上工作.
有什么问题,可以请任何人回复与解决方案?谢谢你提前
下面是我用于奖励广告的代码
import React, { useState, useEffect } from "react";
import { View, Button, Text, ScrollView, } from 'react-native'
import { RewardedAd, RewardedAdEventType, TestIds } from 'react-native-google-mobile-ads';
const adUnitId = __DEV__ ? TestIds.REWARDED : 'ca-app-pub-3940256099942544/5224354917';
const rewarded = RewardedAd.createForAdRequest(adUnitId, {
requestNonPersonalizedAdsOnly: true,
keywords: ['fashion', 'clothing'],
});
const Testing = ({ navigation }) =>{
const [loaded, setLoaded] = useState(false);
useEffect(() => {
const unsubscribeLoaded = rewarded.addAdEventListener(RewardedAdEventType.LOADED, () => {
setLoaded(true);
rewarded.show();
});
const unsubscribeEarned = rewarded.addAdEventListener(
RewardedAdEventType.EARNED_REWARD,
reward => {
console.log('User earned reward of ', reward);
},
);
// Start loading the rewarded ad straight away
rewarded.load();
// Unsubscribe from events on unmount
return () => {
unsubscribeLoaded();
unsubscribeEarned();
};
}, []);
return (
<ScrollView>
<View style={{flex:1, justifyContent : 'center',alignItems : 'center'}}>
<Text>
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
</Text>
<Button onPress = {() => navigation.navigate('First')} title='Next Screen'></Button>
</View>
</ScrollView>
)
}
export default Testing;
请查看图片截图-x1c 0d1xx 1c 1d 1xx 1c 2d 1xx 1c 3d 1x
2条答案
按热度按时间ac1kyiln1#
这里是react-native-google-mobile-ads维护者
您可能希望使用该模块的8.1.2版本,该版本包含我刚刚进行的修复,以避免反射性地使用admob SDK,从而使proguard在确定要保留的内容时不会出现问题,并且在proguard之后不会出现混淆名称的问题
https://github.com/invertase/react-native-google-mobile-ads/issues/241#issuecomment-1275530015
xdnvmnnf2#
我真的不明白为什么这是记录如此糟糕!
下面是我的工作代码:
或者给予以下模块:npm iReact-本地-谷歌-移动-广告
https://www.npmjs.com/package/react-native-google-mobile-ads