似乎我找不到广告不应该起作用的任何理由。
但它不起作用。
我在一些YouTube教程中使用了一些Jar文件的Eclipse编译,但仍无效。
以下是代码:
using UnityEngine;
using System.Collections;
using GoogleMobileAds.Api;
public class mainMenuCamera : MonoBehaviour {
// Use this for initialization
void Awake()
{
RequestBanner ();
}
void Start () {
}
// Update is called once per frame
void Update () {
}
private void RequestBanner()
{
#if UNITY_EDITOR
string adUnitId = "unused";
#elif UNITY_ANDROID
string adUnitId = " ";
#else
string adUnitId = "unexpected_platform";
#endif
BannerView bannerView = new BannerView (adUnitId, AdSize.Banner, AdPosition.Top);
AdRequest request = new AdRequest.Builder()
.AddTestDevice(AdRequest.TestDeviceSimulator) // Simulator.
.AddTestDevice("0123456789ABCDEF0123456789ABCDEF") // Test Device 1.
.Build();
bannerView.LoadAd (request);
}
}
答案 0 :(得分:1)
下载Admob Unity插件
需要AdmobPluginRes / GoogleMobileAds.framework和admob_unity_plugin.unitypackage 从Admob Unity3d插件项目主页https://github.com/unity-plugins/Unity-Admob下载这些文件 或下载所有Unity admob插件项目https://github.com/unity-plugins/Unity-Admob/archive/master.zip
安装Admob Unity
在Unity编辑器中打开您的项目。 导航到资产 - >导入包 - >定制包。 选择AdmobUnityPlugin.unitypackage文件。 通过选择“导入”导入插件的所有文件。请务必检查与文件的任何冲突。
Init Admob Unity插件
创建一个C#脚本,将脚本拖到场景中的对象上,在脚本文件中添加以下代码
using admob;
Admob.Instance().initAdmob("admob banner id", "admob interstitial id");//admob id with format ca-app-pub-279xxxxxxxx/xxxxxxxx
//Admob.Instance().initAdmob("ca-app-pub-3940256099942544/2934735716", "ca-app-pub-3940256099942544/4411468910");
以下是创建插页式广告的最小代码。
Admob.Instance().loadInterstitial();
需要明确显示插页式广告。在应用中的适当停止点,在显示之前检查插页式广告是否准备就绪:
if (Admob.Instance().isInterstitialReady()) {
Admob.Instance().showInterstitial();
}
这就是我所遵循的,并显示非页内广告的成功,但是当我显示奖励视频时,我会收到错误。所以后悔。
答案 1 :(得分:0)
尝试创建Admob帐户并输入AdUnit ID。此外,请确保主摄像头(无论您将其连接到哪个层)都是顶层。在我的游戏中,主摄像头设置在其他图层的中间,在我将其移动到顶部之前不会显示任何内容