将 InMobi SDK 与 Unity 集成非常简单。
您可以通过 Unity 插件在 Android 和 iOS 应用上从 InMobi 获取以下几种广告类型:
要运行最新版本的 Unity 插件,您需要以下条件:
| SDK 版本 | |
| 尺寸 |
iOS - 692 KB(.IPA 文件膨胀) Android - 375.341 KB(.APK 膨胀) |
| 插件 |
按照以下简单步骤,即可开始使用 InMobi 赚钱:
选择“资产导入包”> “自定义包”,然后搜索InMobiAdsUnityPlugin.unitypackage您下载的文件。

确保选中所有文件,然后单击“导入”。

您可以使用 InMobi Ads 插件中的通用 C# API 来请求横幅广告、插页式广告和激励视频广告。代码只需编写一次,即可部署到 Android 和 iOS 平台。
Class中提供了多个 API,InMobiPlugin可以将人口统计信息传递给 InMobi SDK,这有助于我们更好地进行广告定向。
其中一些如下:
<span class="hljs-comment">//Set Age</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">SetAge</span>(<span class="hljs-params"><span class="hljs-built_in">int</span> age</span>)</span>{
inmobiPluginClient.SetAge (age);
}
<span class="hljs-comment">//Set PostalCode</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">SetPostalCode</span>(<span class="hljs-params"><span class="hljs-built_in">string</span> postalCode</span>)</span>{
inmobiPluginClient.SetPostalCode (postalCode);
}
<span class="hljs-comment">//Set Year of Birth</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">SetYearOfBirth</span>(<span class="hljs-params"><span class="hljs-built_in">int</span> yearOfBirth</span>)</span>{
inmobiPluginClient.SetYearOfBirth (yearOfBirth);
}
<span class="hljs-comment">//Set Gender GENDER_MALE or GENDER_FEMALE</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">SetGender</span>(<span class="hljs-params"><span class="hljs-built_in">string</span> gender</span>)</span>{
inmobiPluginClient.SetGender (gender);
}
您可以使用InMobiPlugin此类初始化 InMobi SDK。初始化 InMobi SDK 需要账户 ID。
以下是初始化 InMobi SDK 的示例代码:
<span class="hljs-function"><span class="hljs-keyword">private</span> <span class="hljs-keyword">void</span> <span class="hljs-title">initializeInMobiAds</span> ()</span> {
<span class="hljs-comment">//Account id used here is test account id </span>
InMobiPlugin inmobiPlugin = <span class="hljs-keyword">new</span> InMobiPlugin();
inmobiPlugin.OnInitializationCompleted += <span class="hljs-keyword">this</span>.HandleInitializationStatus;
Dictionary<<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>> consentObject = <span class="hljs-keyword">new</span> Dictionary<<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>>();
<span class="hljs-meta">#<span class="hljs-keyword">if</span> UNITY_ANDROID </span>
consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_AVAILABLE, <span class="hljs-literal">true</span>);
<span class="hljs-meta">#<span class="hljs-keyword">elif</span> (UNITY_5 && UNITY_IOS) || UNITY_IPHONE </span>
consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_AVAILABLE, “<span class="hljs-literal">true</span>”);
<span class="hljs-meta">#<span class="hljs-keyword">endif</span> </span>
consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_IAB, <span class="hljs-string">"IAB_STRING"</span>);
inmobiPlugin.Init(<span class="hljs-string">"4028cb8b2c3a0b45012c406824e800ba"</span>, consentObject);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleInitializationStatus</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, SdkInitializationStatusArgs args</span>)</span> {
Debug.Log(<span class="hljs-string">"SDK Initialization status code : "</span> + args.status.Code + <span class="hljs-string">" and reason : "</span> +
args.status.Reason);
}
在您继续之前,让我们先了解几件事:
什么是 consentObject? - consentObject是一个字典,用于表示发布商向 SDK 提供的所有类型的同意信息。如果您希望通过来自欧洲经济区 (EEA) 的流量获利,则此键是必需的。您可以在此处consentObject阅读更多关于 GDPR 法规的信息。
| 钥匙 | 类型 | 推理 |
| GDPR 同意 | 细绳 | 授权字符串是一串数字,用于标识广告技术供应商的授权状态。 该字符串必须符合此处所述的 IAB 合同要求。 |
| gdpr_consent_available | 字符串(iOS) | 对于 iOS,该值应以字符串形式传递:“true”:用户已同意收集和使用数据。“false”:用户未同意收集和使用数据。 除“true”和“false”之外的任何值均无效,并将被视为用户未提供的值。 可通过字符串常量 IM_GDPR_CONSENT_IAB 访问此键。 |
| 布尔值(Android) | 对于 Android 系统,该值应以布尔值形式传递:true 表示用户已同意收集和使用数据;false 表示用户未同意收集和使用数据。 除 true 和 false 之外的任何值均无效,并将被视为用户未提供的值。 此键可通过字符串常量 IM_GDPR_CONSENT_IAB 访问。 |
|
| GDPR | 细绳 | 请求是否受 GDPR 法规约束(0 = 否,1 = 是),省略表示未知。 |
根据《通用数据保护条例》(“GDPR”),在其应用上收集数据的发布商必须具备收集和处理欧洲经济区(“EEA”)用户个人数据的合法依据。请确保在向 InMobi 向欧洲地区发送广告请求之前,已获得用户的适当同意,并按照我们推荐的 SDK 实现方式进行相应说明。如果您未获得欧洲用户的任何同意,请勿传递任何用户的统计信息。
在向 InMobi 发出任何广告请求之前,必须先初始化 InMobi SDK。建议在应用启动时就进行初始化。
为了符合《儿童在线隐私保护法》(COPPA) 的规定,您可以指定用户是否为儿童。如果用户在美国未满 13 周岁,或在其他地区未满适用年龄,请设置为 true。
<span class="hljs-comment">// Set age restriction for COPPA compliance</span>
<span class="hljs-comment">// Set to true if the user is a child (under 13 in US)</span>
inMobiPlugin.<span class="hljs-title class_">SetAgeRestriction</span>(<span class="hljs-literal">true</span>);
出版商信号
发布商信号允许您传递上下文数据,以改进广告定位和收益。您可以传递有关用户行为、流量来源和其他属性的信息,从而帮助提升广告效果。
设置发布商信号
创建一个包含信号键值对的字典,然后将其传递给 SDK。此方法必须在 InMobi SDK 成功初始化后调用。请确保在每次广告请求之前调用此函数并更新值。
<span class="hljs-comment">// Create a dictionary with all required signals and corresponding values</span>
<span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>> publisherSignals = <span class="hljs-keyword">new</span> <span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>>();
<span class="hljs-comment">// User monetization signals</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"iap"</span>, <span class="hljs-literal">true</span>); <span class="hljs-comment">// User has made IAP</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"ua_type"</span>, <span class="hljs-string">"paid"</span>); <span class="hljs-comment">// User is acquired via paid medium</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"iap_type"</span>, <span class="hljs-string">"minnow"</span>); <span class="hljs-comment">// User has made low purchases</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"iaa_type"</span>, <span class="hljs-string">"whale"</span>); <span class="hljs-comment">// User has seen high number of ads</span>
<span class="hljs-comment">// Session and impression depth signals</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"s_dep_rew"</span>, <span class="hljs-number">4</span>); <span class="hljs-comment">// User has seen 4 rewarded ads in current session</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"i_dep_rew"</span>, <span class="hljs-number">10</span>); <span class="hljs-comment">// User has seen 10 rewarded ads in lifetime</span>
<span class="hljs-comment">// Performance signals</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"ctr_rew"</span>, <span class="hljs-number">9.25</span>); <span class="hljs-comment">// Historical CTR for user is 9.25%</span>
publisherSignals.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"abp_5_rew"</span>, <span class="hljs-number">0.01720</span>); <span class="hljs-comment">// Average winning bid price for last 5 rewarded auctions was $0.01720, eCPM is $17.2</span>
<span class="hljs-comment">// Pass the signals to InMobi SDK</span>
inMobiPlugin.<span class="hljs-title class_">PutPublisherSignals</span>(publisherSignals);
<<span class="hljs-regexp">/string,></</span><span class="hljs-built_in">string</span>,>
获取出版商信号
您可以检索当前设置的信号,以验证正在传递哪些数据。
<span class="hljs-comment">// Check what signals are set already</span>
<span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>> currentSignals = inMobiPlugin.<span class="hljs-title class_">GetPublisherSignals</span>();</<span class="hljs-built_in">string</span>,>
重置发布者信号
必要时清除用户的所有信号数据。
<span class="hljs-comment">// Clear all the signals data for the user</span>
inMobiPlugin<span class="hljs-selector-class">.ResetPublisherSignals</span>();
您必须在每个会话中提供 consentObject。SDK 不会持久化同意信息,它只会将 consentObject 保存在内存中。如果应用重新启动,SDK 将丢失 consentObject。在会话期间,可以按如下方式更新 consentObject:
Dictionary<<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>> consentObject = <span class="hljs-keyword">new</span> Dictionary<<span class="hljs-built_in">string</span>, <span class="hljs-built_in">object</span>=<span class="hljs-string">""</span>>();
<span class="hljs-meta">#<span class="hljs-keyword">if</span> UNITY_ANDROID</span>
consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_AVAILABLE, <span class="hljs-literal">true</span>);
<span class="hljs-meta">#<span class="hljs-keyword">elif</span> (UNITY_5 && UNITY_IOS) || UNITY_IPHONE</span>
consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_AVAILABLE, “<span class="hljs-literal">true</span>”);
<span class="hljs-meta">#<span class="hljs-keyword">endif</span> </span>
consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_IAB, <span class="hljs-string">"IAB_STRING"</span>);
inmobiPlugin.UpdateGdprConsentObject(consentObject);
以下是创建和加载横幅广告所需的最简代码:
<span class="hljs-keyword">private</span> void RequestBanner ()
{
<span class="hljs-comment">// These placement Ids are configured to always serve test ads.</span>
#<span class="hljs-keyword">if</span> UNITY_ANDROID
string placementId = <span class="hljs-string">"1467162141987"</span>;
#elif UNITY_IPHONE
string placementId = <span class="hljs-string">"1464947431995"</span>;
#endif
<span class="hljs-comment">// Create a 320x50 banner at the bottom of the screen.</span>
<span class="hljs-keyword">this</span>.bannerAd = new BannerAd (placementId, <span class="hljs-number">320</span>, <span class="hljs-number">50</span>, (int)InMobiAdPosition.BottomCenter);
<span class="hljs-comment">// Register for ad events.</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdLoadSucceeded += <span class="hljs-keyword">this</span>.HandleOnAdLoadSucceeded; <span class="hljs-comment">// Called when ad is loaded successfully</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdLoadFailed += <span class="hljs-keyword">this</span>.HandleAdLoadFailed; <span class="hljs-comment">// Called when ad fails to load</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdFetchSuccessful += <span class="hljs-keyword">this</span>.HandleAdFetchSuccessful; <span class="hljs-comment">// Called when ad content is fetched successfully</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdFetchFailed += <span class="hljs-keyword">this</span>.HandleAdFetchFailed; <span class="hljs-comment">// Called when ad fetch fails</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdImpression += <span class="hljs-keyword">this</span>.HandleAdImpression; <span class="hljs-comment">// Called when ad impression is recorded</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdDisplayed += <span class="hljs-keyword">this</span>.HandleAdDisplayed; <span class="hljs-comment">// Called when ad is displayed on screen</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdDismissed += <span class="hljs-keyword">this</span>.HandleAdDismissed; <span class="hljs-comment">// Called when ad is dismissed</span>
<span class="hljs-keyword">this</span>.bannerAd.OnAdInteraction += <span class="hljs-keyword">this</span>.HandleAdInteraction; <span class="hljs-comment">// Called when user interacts with ad</span>
<span class="hljs-keyword">this</span>.bannerAd.OnUserLeftApplication += <span class="hljs-keyword">this</span>.HandleUserLeftApplication; <span class="hljs-comment">// Called when user leaves app via ad</span>
<span class="hljs-comment">// Load a banner ad.</span>
<span class="hljs-keyword">this</span>.bannerAd.LoadAd ();
}
InMobiAdPosition枚举类型指定横幅的放置位置。
iOS 和 Android 平台都需要一个唯一的广告位 ID。其余 API 在两个平台上保持一致。
<span class="hljs-comment">// Set extras for ad targeting. All values must be passed as string.</span>
<span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">string</span>=<span class="hljs-string">""</span>> extras = <span class="hljs-keyword">new</span> <span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">string</span>=<span class="hljs-string">""</span>>();
extras.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"tp"</span>, <span class="hljs-string">"admob"</span>); <span class="hljs-comment">// Mediation partner name</span>
extras.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"tp_ver"</span>, <span class="hljs-string">"19.0.0"</span>); <span class="hljs-comment">// Mediation partner SDK version</span>
<span class="hljs-variable language_">this</span>.<span class="hljs-property">bannerAd</span>.<span class="hljs-title class_">SetExtras</span>(extras);
<<span class="hljs-regexp">/string,></</span><span class="hljs-built_in">string</span>,>
请注意,插屏广告和全屏视频广告的集成方式相同。以下是加载插屏广告所需的最简代码:
<span class="hljs-keyword">private</span> void RequestInterstitial ()
{
<span class="hljs-comment">// These placement Ids are configured to always serve test ads.</span>
#<span class="hljs-keyword">if</span> UNITY_ANDROID
string placementId = <span class="hljs-string">"1469137441636"</span>;
#elif UNITY_IPHONE
string placementId = <span class="hljs-string">"1467548435003"</span>;
#endif
<span class="hljs-comment">// Create an interstitial.</span>
<span class="hljs-keyword">this</span>.interstitialAd = new InterstitialAd (placementId);
<span class="hljs-comment">// Register for ad events.</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdLoadSucceeded += <span class="hljs-keyword">this</span>.HandleOnAdLoadSucceeded; <span class="hljs-comment">// Called when ad is loaded successfully</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdLoadFailed += <span class="hljs-keyword">this</span>.HandleAdLoadFailed; <span class="hljs-comment">// Called when ad fails to load</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdFetchSuccessful += <span class="hljs-keyword">this</span>.HandleAdFetchSuccessful; <span class="hljs-comment">// Called when ad content is fetched successfully</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdFetchFailed += <span class="hljs-keyword">this</span>.HandleAdFetchFailed; <span class="hljs-comment">// Called when ad fetch fails</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdImpression += <span class="hljs-keyword">this</span>.HandleAdImpression; <span class="hljs-comment">// Called when ad impression is recorded</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdDisplayed += <span class="hljs-keyword">this</span>.HandleAdDisplayed; <span class="hljs-comment">// Called when ad is displayed on screen</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdDismissed += <span class="hljs-keyword">this</span>.HandleAdDismissed; <span class="hljs-comment">// Called when ad is dismissed</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdInteraction += <span class="hljs-keyword">this</span>.HandleAdInteraction; <span class="hljs-comment">// Called when user interacts with ad</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnUserLeftApplication += <span class="hljs-keyword">this</span>.HandleUserLeftApplication; <span class="hljs-comment">// Called when user leaves app via ad</span>
<span class="hljs-keyword">this</span>.interstitialAd.OnAdDisplayFailed += <span class="hljs-keyword">this</span>.HandleAdDisplayFailed;
<span class="hljs-keyword">this</span>.interstitialAd.OnAdWillDisplay += <span class="hljs-keyword">this</span>.HandleAdWillDisplay;
<span class="hljs-comment">// Load an interstitial ad.</span>
<span class="hljs-keyword">this</span>.interstitialAd.LoadAd ();
}
插页式广告需要明确显示,但在此之前,需要通过调用isReady ()如下所示的函数来检查插页式广告是否已准备就绪:
<span class="hljs-keyword">if</span> (<span class="hljs-keyword">this</span>.interstitialAd.isReady ()) {
<span class="hljs-keyword">this</span>.interstitialAd.Show ();
} <span class="hljs-keyword">else</span> {
MonoBehaviour.print (<span class="hljs-string">"Interstitial is not ready yet"</span>);
}
插页式广告的最佳展示位置是关卡末尾或会话末尾。
<span class="hljs-comment">// Set extras for ad targeting. All values must be passed as string.</span>
<span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">string</span>=<span class="hljs-string">""</span>> extras = <span class="hljs-keyword">new</span> <span class="hljs-title class_">Dictionary</span><<span class="hljs-built_in">string</span>, <span class="hljs-built_in">string</span>=<span class="hljs-string">""</span>>();
extras.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"tp"</span>, <span class="hljs-string">"admob"</span>); <span class="hljs-comment">// Mediation partner name</span>
extras.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"tp_ver"</span>, <span class="hljs-string">"19.0.0"</span>); <span class="hljs-comment">// Mediation partner SDK version</span>
<span class="hljs-variable language_">this</span>.<span class="hljs-property">interstitialAd</span>.<span class="hljs-title class_">SetExtras</span>(extras);
<<span class="hljs-regexp">/string,></</span><span class="hljs-built_in">string</span>,>
以下是加载激励视频广告的最小代码:
<span class="hljs-keyword">private</span> void RequestRewardBasedVideo ()
{
<span class="hljs-comment">// These placement Ids are configured to always serve test ads.</span>
#<span class="hljs-keyword">if</span> UNITY_ANDROID
string placementId = <span class="hljs-string">"1453753057988"</span>;
#elif UNITY_IPHONE
string placementId = <span class="hljs-string">"1465883204802"</span>;
#endif
<span class="hljs-keyword">this</span>.rewardedVideoAd = new RewardedVideoAd (placementId);
<span class="hljs-comment">// Register for ad events.</span>
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdLoadSucceeded += <span class="hljs-keyword">this</span>.HandleOnAdLoadSucceeded;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdLoadFailed += <span class="hljs-keyword">this</span>.HandleAdLoadFailed;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdFetchSuccessful += <span class="hljs-keyword">this</span>.HandleAdFetchSuccessful;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdFetchFailed += <span class="hljs-keyword">this</span>.HandleAdFetchFailed;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdDisplayed += <span class="hljs-keyword">this</span>.HandleAdDisplayed;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdDismissed += <span class="hljs-keyword">this</span>.HandleAdDismissed;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdImpression += <span class="hljs-keyword">this</span>.HandleAdImpression;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdInteraction += <span class="hljs-keyword">this</span>.HandleAdInteraction;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnUserLeftApplication += <span class="hljs-keyword">this</span>.HandleUserLeftApplication;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdDisplayFailed += <span class="hljs-keyword">this</span>.HandleAdDisplayFailed;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdWillDisplay += <span class="hljs-keyword">this</span>.HandleAdWillDisplay;
<span class="hljs-keyword">this</span>.rewardedVideoAd.OnAdRewardActionCompleted += <span class="hljs-keyword">this</span>.HandleRewardActionCompleted;
<span class="hljs-keyword">this</span>.rewardedVideoAd.LoadAd ();
}
激励视频广告的工作方式与插屏广告类似,需要在拨打电话前检查是否准备就绪show ()。
<span class="hljs-function"><span class="hljs-keyword">private</span> <span class="hljs-keyword">void</span> <span class="hljs-title">ShowRewardBasedVideo</span> ()</span>
{
<span class="hljs-keyword">if</span> (<span class="hljs-keyword">this</span>.rewardedVideoAd.isReady ()) {
<span class="hljs-keyword">this</span>.rewardedVideoAd.Show ();
} <span class="hljs-keyword">else</span> {
MonoBehaviour.print (<span class="hljs-string">"Rewarded video ad is not ready yet"</span>);
}
}
您可以为横幅广告、插页式广告和激励视频广告设置以下广告事件。
<span class="hljs-meta">#<span class="hljs-keyword">region</span> callback handlers</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleOnAdLoadSucceeded</span>(<span class="hljs-params"><span class="hljs-built_in">object</span> sender, AdLoadSuccessEventArgs args</span>)</span>
{
MonoBehaviour.print(<span class="hljs-string">"HandleOnAdLoadSucceeded event received"</span>);
<span class="hljs-comment">// Access ad metadata from the event args</span>
MonoBehaviour.print(<span class="hljs-string">"Creative ID: "</span> + args.AdMetaInfo.CreativeID);
MonoBehaviour.print(<span class="hljs-string">"Bid: "</span> + args.AdMetaInfo.Bid);
MonoBehaviour.print(<span class="hljs-string">"Bid Keyword: "</span> + args.AdMetaInfo.BidKeyword);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdLoadFailed</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, AdLoadFailedEventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleAdLoadFailed event received with message: "</span> + args.Error);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdDisplayed</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleAdDisplayed event received"</span>);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdDismissed</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleAdDismissed event received"</span>);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdInteraction</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, AdInteractionEventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleAdDismissed event received "</span> + args.Message);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleUserLeftApplication</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleUserLeftApplication event received"</span>);
}
<span class="hljs-meta">#<span class="hljs-keyword">endregion</span></span>
<span class="hljs-meta">#<span class="hljs-keyword">region</span> Interstitial specific callback handlers</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdReceived</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleAdReceived event received"</span>);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdWillDisplay</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
MonoBehaviour.print (
<span class="hljs-string">"HandleAdWillDisplay event received with message: "</span>);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdDisplayFailed</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
MonoBehaviour.print (<span class="hljs-string">"HandleAdDisplayFailed event received"</span>);
}
<span class="hljs-meta">#<span class="hljs-keyword">endregion</span></span>
<span class="hljs-meta">#<span class="hljs-keyword">region</span> RewardBasedVideo specific callback handlers</span>
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleRewardActionCompleted</span> (<span class="hljs-params"><span class="hljs-built_in">object</span> sender, AdRewardActionCompletedEventArgs args</span>)</span>
{
MonoBehaviour.print (
<span class="hljs-string">"HandleRewardActionCompleted event received for "</span> + args.Rewards);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdFetchSuccessful</span>(<span class="hljs-params"><span class="hljs-built_in">object</span> sender, AdFetchSuccessEventArgs args</span>)</span>
{
<span class="hljs-comment">// Called when ad content is successfully fetched</span>
<span class="hljs-comment">// Access ad metadata from the event args</span>
MonoBehaviour.print(<span class="hljs-string">"HandleAdFetchSuccessful event received"</span>);
MonoBehaviour.print(<span class="hljs-string">"Creative ID: "</span> + args.AdMetaInfo.CreativeID);
MonoBehaviour.print(<span class="hljs-string">"Bid: "</span> + args.AdMetaInfo.Bid);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdFetchFailed</span>(<span class="hljs-params"><span class="hljs-built_in">object</span> sender, AdFetchFailedEventArgs args</span>)</span>
{
<span class="hljs-comment">// Called when ad fetch fails</span>
MonoBehaviour.print(<span class="hljs-string">"HandleAdFetchFailed event received"</span>);
MonoBehaviour.print(<span class="hljs-string">"Error: "</span> + args.Error);
}
<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">HandleAdImpression</span>(<span class="hljs-params"><span class="hljs-built_in">object</span> sender, EventArgs args</span>)</span>
{
<span class="hljs-comment">// Called when an ad impression is recorded</span>
MonoBehaviour.print(<span class="hljs-string">"HandleAdImpression event received"</span>);
}
<span class="hljs-meta">#<span class="hljs-keyword">endregion</span></span>
(args.Rewards特指激励视频广告)采用 JSON 字符串格式。
| 班级 | 特性 |
| 广告获取成功事件参数 | 广告元数据信息 |
| 广告获取失败事件参数 | 错误(字符串) |
| 广告加载成功事件参数 | 广告元数据信息 |
| 财产 | 类型 | 描述 |
| 创意ID | 细绳 | 广告素材的唯一标识符 |
| 出价 | 双倍的 | 广告出价 |
| 竞价信息 | JObject | 补充投标信息 |
| 竞价关键词 | 细绳 | 与出价相关的关键词 |
By installing this SDK update, you agree that your Children Privacy Compliance setting remains accurate or that you will update that setting, whenever there is a change in your app's audience. You may update the app's Children Privacy Compliance settings at https://publisher.inmobi.com/my-inventory/app-and-placements.