AI Search

Unity集成

按照说明集成 Unity。

  1. 在 Unity 编辑器中打开你的项目。
  2. 选择 Assets Import Package Custom Package,然后搜索您下载的 InMobiAdsUnityPackage_1001.unitypackage 文件。

    笔记

    为确保更流畅的体验,您必须使用 Unity 版本 2020.1.10f1 或更高版本才能使用 InMobi Unity 插件。

初始化

导入 InMobi SDK 头文件并进行初始化。

<span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">InitializeInMobiAds</span>()</span> 
    { 
        UpdateLogs(<span class="hljs-string">"initializeInMobiAds "</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>>(); 
         consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_AVAILABLE, <span class="hljs-literal">true</span>); 
        consentObject.Add(InMobiPlugin.IM_GDPR_CONSENT_IAB, <span class="hljs-string">"IAB_STRING"</span>); 
        inmobiPlugin.Init(<span class="hljs-string">"<inmobi account="</span><span class="hljs-string">" id="</span><span class="hljs-string">">"</span>, consentObject); 
        inmobiPlugin.SetLogLevel(<span class="hljs-string">"Debug"</span>); 
        inmobiPlugin.SetAge(<span class="hljs-number">23</span>); 
    } 
<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> { 
        UpdateLogs(<span class="hljs-string">"SDK Initialization status code : "</span> + args.status.Code + <span class="hljs-string">" and reason : "</span> + args.status.Reason); 
    } </inmobi></<span class="hljs-built_in">string</span>,></<span class="hljs-built_in">string</span>,>

统一推送( )

创建用户数据模型,如下所示:

<span class="hljs-type">InMobiUserDataTypes</span> <span class="hljs-variable">emailIdData</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">InMobiUserDataTypes</span>(); 
emailIdData.Md5 = CreateMD5(emailID); 
emailIdData.Sha1 = CreateSHA1(emailID); 
emailIdData.Sha256 = CreateSHA256(emailID);  
<span class="hljs-type">InMobiUserDataTypes</span> <span class="hljs-variable">phoneNumberData</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">InMobiUserDataTypes</span>(); 
phoneNumberData.Md5 = CreateMD5(phoneNumber); 
phoneNumberData.Sha1 = CreateSHA1(phoneNumber); 
phoneNumberData.Sha256 = CreateSHA256(phoneNumber);  
<span class="hljs-type">InMobiUserDataModel</span> <span class="hljs-variable">userDataModel</span> <span class="hljs-operator">=</span> <span class="hljs-keyword">new</span> <span class="hljs-title class_">InMobiUserDataModel</span>(); 
userDataModel.EmailID = emailIdData;  
userDataModel.PhoneNumber = phoneNumberData;
<span class="hljs-comment">// Pass this data model to fetch the API. </span>
InMobiUnifiedIdService.Push(userDataModel);

统一获取 UnifiedIds()

使用此 API 获取 UnifFI ID。

<span class="hljs-title class_">InMobiUnifiedIdService</span>.<span class="hljs-title class_">FetchUnifiedIds</span>();  
<span class="hljs-title class_">Callback</span>:  
<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">onFetchCompleted</span>(<span class="hljs-params"><span class="hljs-built_in">object</span> sender, OnFetchCompletedEventArgs e</span>) 
    { 
        <span class="hljs-title class_">UnityMainThreadHelper</span>.<span class="hljs-title class_">GetInstance</span>().<span class="hljs-title class_">PostTask</span>(<span class="hljs-function">() =></span> { 
            <span class="hljs-title class_">Logger</span>.<span class="hljs-title function_">getInstance</span>().<span class="hljs-title function_">log</span>(<span class="hljs-string">"onFetchCompleted"</span> + e.<span class="hljs-property">unifiedIds</span> + <span class="hljs-string">" "</span> + e.<span class="hljs-property">error</span>, logField); 
        }); 
    }

示例代码

<span class="hljs-keyword">public</span> <span class="hljs-title class_">InputField</span> logField; 
    <span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">onFetchCompleted</span>(<span class="hljs-params"><span class="hljs-built_in">object</span> sender, OnFetchCompletedEventArgs e</span>) 
    { 
        <span class="hljs-title class_">UnityMainThreadHelper</span>.<span class="hljs-title class_">GetInstance</span>().<span class="hljs-title class_">PostTask</span>(<span class="hljs-function">() =></span> { 
            <span class="hljs-title class_">Logger</span>.<span class="hljs-title function_">getInstance</span>().<span class="hljs-title function_">log</span>(<span class="hljs-string">"onFetchCompleted"</span> + e.<span class="hljs-property">unifiedIds</span> + <span class="hljs-string">" "</span> + e.<span class="hljs-property">error</span>, logField); 
        }); 
    } 
    <span class="hljs-keyword">private</span> <span class="hljs-built_in">void</span> <span class="hljs-title class_">Start</span>() 
    { 
        <span class="hljs-title class_">InMobiUnifiedIdService</span>.<span class="hljs-property">OnFetchCompleted</span> += onFetchCompleted; 
    } 
    <span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">onFetch</span>() 
    { 
        <span class="hljs-title class_">Logger</span>.<span class="hljs-title function_">getInstance</span>().<span class="hljs-title function_">log</span>(<span class="hljs-string">"Fetch Called"</span>, logField); 
        <span class="hljs-title class_">InMobiUnifiedIdService</span>.<span class="hljs-title class_">FetchUnifiedIds</span>(); 
    }

统一重置()

调用以下重置 API 以清除 SDK 中存储的所有用户相关数据和 ID。

InMobiUnifiedIdService<span class="hljs-selector-class">.Reset</span>();

统一 setPublisherProvidedUnifiedId ( )

使用以下函数将通过与不同的 ID 合作伙伴(例如 liveramp、id5 等)建立直接合作关系而获得的 UID(通用 ID)向上游传递给需求合作伙伴,或传递给其他广告交易平台。

InMobiSdk<span class="hljs-selector-class">.setPublisherProvidedUnifiedID</span>(Dictionary unifiedIds);

示例代码

<span class="hljs-title class_">InMobiPlugin</span> inMobiPlugin = <span class="hljs-keyword">new</span> <span class="hljs-title class_">InMobiPlugin</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>> unifIds = <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>>(); 
unifIds.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"key0"</span>, <span class="hljs-string">"value0"</span>); 
unifIds.<span class="hljs-title class_">Add</span>(<span class="hljs-string">"nestedJson"</span>, level1); 
inMobiPlugin.<span class="hljs-title class_">SetPublisherProvidedUnifiedId</span>(unifIds); <<span class="hljs-regexp">/string,></</span><span class="hljs-built_in">string</span>,>

本页内容

最后更新于 : 21 Jul, 2026