Troszkę czasu już minęło no i niestety nadal reklamy się nie wyświetlają. Testowe reklamy działają prawidłowo. Szczegóły płatności też mam już uzupełnione.
Dodatkowo zobaczyłem, że na stronie admob w raportach o aplikacji zaczęły pojawiać się żądania o wyświetlanie reklam.Może reklamy zaczną pojawiać się, gdy tych żądań będzie więcej, aktualnie jest ich 130. Dodam również, że aplikacja nie jest jeszcze publiczna, nie jest dostępna na google play i wszystkie żądania to są moje żądania. Może jak opublikuje grę, będzie więcej żądań i z różnych urządzeń to może wtedy zaczną pojawiać się reklamy.
Możliwe, że robię też coś źle. Jedyne rzeczy, które zrobiłem to:
1. Edytowałem plik AndroidManifest.xml, który wygląda teraz następująco:
<?xml version="1.0" encoding="utf-8"?>
<!--
This Google Mobile Ads plugin library manifest will get merged with your
application's manifest, adding the necessary activity and permissions
required for displaying ads.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.unity.ads"
android:versionName="1.0"
android:versionCode="1">
<uses-sdk android:minSdkVersion="14"
android:targetSdkVersion="19" />
<application>
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="mój-id-aplikacji"/>
</application>
</manifest>
Również w tym pliku jest wspominane o dodaniu odpowiednich uprawnień. Chodzi tutaj tylko o uprawnienia te co są poniżej?
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
2. Stworzyłem prosty skrypt. Jego celem jest właśnie wyświetlanie reklam.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using GoogleMobileAds.Api;
public class AdSystem : MonoBehaviour
{
private InterstitialAd interstitial;
public GameObject Red, Green;
private void Update()
{
if (this.interstitial.IsLoaded() == true) {
Green.SetActive(true);
}
}
private void Start()
{
string appID = "mój-identyfikator-aplikacji";
//string appID = "ca-app-pub-3940256099942544~3347511713";
MobileAds.Initialize(appID);
}
private AdRequest CreateAdRequest() {
return new AdRequest.Builder().Build();
/*return new AdRequest.Builder()
.AddTestDevice(AdRequest.TestDeviceSimulator)
.AddTestDevice("0123456789ABCDEF0123456789ABCDEF")
.Build();*/
}
public void RequestInterstitial() {
string adUnityID = "mój-identyfikator-jednostki-reklamowej-reklama-pelnoekranowa";
//string adUnityID = "ca-app-pub-3940256099942544/1033173712";
if (this.interstitial != null) {
this.interstitial.Destroy();
}
this.interstitial = new InterstitialAd(adUnityID);
this.interstitial.LoadAd(this.CreateAdRequest());
}
public void ShowInterstitial() {
if (this.interstitial.IsLoaded())
{
Green.SetActive(true);
this.interstitial.Show();
Red.SetActive(false);
Green.SetActive(false);
RequestInterstitial();
}
else {
Red.SetActive(true);
}
}
}