任何人都知道如何在受众网络统一中使用 FBNativeAdBridgeCallback 函数
Posted
技术标签:
【中文标题】任何人都知道如何在受众网络统一中使用 FBNativeAdBridgeCallback 函数【英文标题】:Anyone know how to use the FBNativeAdBridgeCallback function in audience network unity 【发布时间】:2016-04-15 12:47:29 【问题描述】:谁能告诉我如何使用 FBNativeAdBridgeCallback 函数?我基本上想知道图像何时完成加载,以便我可以显示它们。 .否则我有一个带有空值的原生横幅,直到 Facebook 完成加载它们。如果每个图像/文本一次加载一个,它看起来真的很难看。
它只是基本的原生广告示例脚本,我尝试使用 IResult,就像登录时一样,但这使它变红。互联网上没有这方面的文档,甚至在 Facebook 开发者网站上也没有,我根本找不到 api。
谁能告诉我如何在下面提供的脚本中使用它?
using UnityEngine;
using UnityEngine.UI;
using System;
using System.Collections;
using System.Collections.Generic;
using AudienceNetwork;
[RequireComponent (typeof(CanvasRenderer))]
[RequireComponent (typeof(RectTransform))]
public class NativeAdTest : MonoBehaviour
private NativeAd nativeAd;
// UI elements in scene
[Header("Text:")]
public Text
title;
public Text socialContext;
[Header("Images:")]
public Image
coverImage;
public Image iconImage;
[Header("Buttons:")]
public Text
callToAction;
public Button callToActionButton;
public GameObject hide;
void Awake ()
// Create a native ad request with a unique placement ID (generate your own on the Facebook app settings).
// Use different ID for each ad placement in your app.
NativeAd nativeAd = new AudienceNetwork.NativeAd ("your placement id");
this.nativeAd = nativeAd;
// Wire up GameObject with the native ad; the specified buttons will be clickable.
nativeAd.RegisterGameObjectForImpression (gameObject, new Button[] callToActionButton );
// Set delegates to get notified on changes or when the user interacts with the ad.
nativeAd.NativeAdDidLoad = (delegate()
Debug.Log ("Native ad loaded.");
Debug.Log ("Loading images...");
// Use helper methods to load images from native ad URLs
StartCoroutine (nativeAd.LoadIconImage (nativeAd.IconImageURL));
StartCoroutine (nativeAd.LoadCoverImage (nativeAd.CoverImageURL));
Debug.Log ("Images loaded.");
title.text = nativeAd.Title;
socialContext.text = nativeAd.SocialContext;
callToAction.text = nativeAd.CallToAction;
Debug.Log ("Native ad Luke.");
// hide.SetActive(false);
//FBNativeAdBridgeCallback
);
nativeAd.NativeAdDidFailWithError = (delegate(string error)
Debug.Log ("Native ad failed to load with error: " + error);
);
nativeAd.NativeAdWillLogImpression = (delegate()
Debug.Log ("Native ad logged impression.");
);
nativeAd.NativeAdDidClick = (delegate()
Debug.Log ("Native ad clicked.");
);
// Initiate a request to load an ad.
nativeAd.LoadAd ();
//nativeAd.nat
void OnGUI ()
// Update GUI from native ad
coverImage.sprite = nativeAd.CoverImage;
iconImage.sprite = nativeAd.IconImage;
void OnDestroy ()
// Dispose of native ad when the scene is destroyed
if (this.nativeAd)
this.nativeAd.Dispose ();
Debug.Log ("NativeAdTest was destroyed!");
// void FBNativeAdBridgeCallback(IResult result)
//
//
//
提前致谢!
【问题讨论】:
“图片已加载完毕”是什么意思?以便加载横幅广告? @NikaKasradze 我想知道公共对象何时包含实际值。否则我有一个带有空值的原生横幅,直到 Facebook 完成加载它们。如果每个图像/文本一次加载一个,它看起来真的很难看。 【参考方案1】:AdView
不允许您从 FBNativeAdBridgeCallback()
定义自定义侦听器。 AdView
已经提供了 5 个回调,包括 NativeAdDidLoad()
。
您的问题的解决方案是先隐藏广告,然后在您收到NativeAdDidLoad()
并完成图片加载后,将广告置于最前面并使其可见。无需创建新的FBNativeAdBridgeCallback()
。
【讨论】:
问题是协程在 NativeAdDidLoad() 内部启动,所以当我让我的 adView 可用时,协程仍然忙于加载图像,即使我在 Debug.Log 之后使其可用(“Native ad Luke .") 显示 - 仍然可以看到加载的封面图像,然后按钮名称更改等等......那么当我可以显示广告时如何获得反馈?以上是关于任何人都知道如何在受众网络统一中使用 FBNativeAdBridgeCallback 函数的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 Android 应用程序受众网络中的质量检查问题?
如何在 Flutter 中获取 Facebook 受众网络的设备 ID?
如何在 facebook 受众网络插页式广告中设置点击计数器?