我遇到了一个问题,因为我的广告没有显示在我的真实设备中,而是显示在模拟器中,使用logcat出现错误,这就是我得到的:
我不知道该怎么办才能解决问题,因为我觉得自己做对了所有事情。
您中的有些人可能会要求提供可能有用的代码,这是我的AdManager脚本,该脚本可能看起来很长,但是很简单..
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<None Include="$(ProjectDir)content\extraFolder\test.txt">
<Link>test.txt</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
实际上我遇到两个错误,第一个是在我叫横幅时,这表示我在该方法上存在问题:
public static AdManager Instance
{
get;
set;
}
public bool InterstitialLoaded = false;
public bool InterstitialClosed = false;
public string BannerAdId = "ca-app-pub-3940256099942544/6300978111";
public string InterstitialAdId = "ca-app-pub-3940256099942544/1033173712";
InterstitialAd interstitialAd;
AdRequest request;
private BannerView bannerView;
public void requestAds()
{
if (PlayerPrefs.GetInt("NoPersonalized") == 1)
{
request = new AdRequest.Builder().AddExtra("npa", "1").Build();
Debug.Log("NoPersonalized ads EU");
}
else
{
if (PlayerPrefs.GetInt("FirstTime") == 1)
{
if (PlayerPrefs.GetInt("Localized") == 1)
{
//request = new AdRequest.Builder().Build();
request = new AdRequest.Builder().Build();
Debug.Log("Personalized ads EU");
}
}
else if (PlayerPrefs.GetInt("BBb") == 1)
{
if (PlayerPrefs.GetInt("Localized") == 0)
{
request = new AdRequest.Builder().Build();
Debug.Log("personalized No EU");
}
else
{
Debug.Log("First time need select ");
request = new AdRequest.Builder().Build();
}
}
else if (PlayerPrefs.GetInt("NotEU") == 1)
{
Debug.Log("Personalized Not EU ");
request = new AdRequest.Builder().Build();
}
}
}
private void Awake()
{
if (Instance == null)
Instance = this;
else
Destroy(gameObject);
DontDestroyOnLoad(gameObject);
interstitialAd = new InterstitialAd(InterstitialAdId);
Showbanner();
requestAds();
interstitialAd.LoadAd(request);
}
public void RequestBanner()
{
bannerView = new BannerView(BannerAdId, AdSize.Banner, AdPosition.Bottom);
requestAds();
bannerView.LoadAd(request);
bannerView.Show();
}
public void Showbanner()
{
RequestBanner();
}
public void HideBanner()
{
bannerView.Destroy();
bannerView.Hide();
bannerView.Destroy();
}
public void ShowInterstitial()
{
requestAds();
interstitialAd.LoadAd(request);
if (interstitialAd.IsLoaded())
{
InterstitialLoaded = true;
interstitialAd.Show();
}
else
{
}
interstitialAd.OnAdClosed += InterstitialAd_onAdClosed;
}
private void InterstitialAd_onAdClosed(object sender, System.EventArgs e)
{
InterstitialLoaded = false;
InterstitialClosed = true;
}
}
我几天来一直遇到这个问题,希望任何人都能提供帮助。
任何帮助将不胜感激。