<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hant-TW">
	<id>https://wiki.tamedia.com.tw/wiki/index.php?action=history&amp;feed=atom&amp;title=Android_Mopub_Native_SDK8</id>
	<title>Android Mopub Native SDK8 - 修訂歷史</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.tamedia.com.tw/wiki/index.php?action=history&amp;feed=atom&amp;title=Android_Mopub_Native_SDK8"/>
	<link rel="alternate" type="text/html" href="https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;action=history"/>
	<updated>2026-05-01T19:58:21Z</updated>
	<subtitle>本 Wiki 上此頁面的修訂歷史</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;diff=1650&amp;oldid=prev</id>
		<title>imported&gt;Wikiuser 於 2021年8月31日 (二) 07:42</title>
		<link rel="alternate" type="text/html" href="https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;diff=1650&amp;oldid=prev"/>
		<updated>2021-08-31T07:42:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hant-TW&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上個修訂&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;於 2021年8月31日 (二) 07:42 的修訂&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l193&quot;&gt;行 193：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;行 193：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: 將上述class完整package設定置MoPub Custom event class&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: 將上述class完整package設定置MoPub Custom event class&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[檔案:Mopub native mediation 1.png |600px]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[檔案:Mopub native mediation 1.png |600px]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;br&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: 將TAmedia所提供的adUnitId設定於MoPub Custom event data(必要), MEDIA_PREFER_IMAGE與VIDEO_START_UNMUTED則為非必要參數&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[檔案:Mopub native mediation 2.png |600px]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;br&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;MEDIA_PREFER_IMAGE: TWMMediaView將圖片為主要顯示內容, 預設為影片&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;br&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;VIDEO_START_UNMUTED: TWMMediaView影片預設將聲音開啟, 預設為靜音&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Android Integeration with Mopub Mediation|回MoPub教學]]&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Android Integeration with Mopub Mediation|回MoPub教學]]&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Wikiuser</name></author>
	</entry>
	<entry>
		<id>https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;diff=1649&amp;oldid=prev</id>
		<title>imported&gt;Wikiuser 於 2021年8月31日 (二) 07:30</title>
		<link rel="alternate" type="text/html" href="https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;diff=1649&amp;oldid=prev"/>
		<updated>2021-08-31T07:30:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hant-TW&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上個修訂&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;於 2021年8月31日 (二) 07:30 的修訂&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l188&quot;&gt;行 188：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;行 188：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== MoPub後台設定 ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;br&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: 將上述class完整package設定置MoPub Custom event class&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[檔案:Mopub native mediation 1.png |600px]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Android Integeration with Mopub Mediation|回MoPub教學]]&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Android Integeration with Mopub Mediation|回MoPub教學]]&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Wikiuser</name></author>
	</entry>
	<entry>
		<id>https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;diff=1648&amp;oldid=prev</id>
		<title>imported&gt;Wikiuser：新頁面: == 建立一個Class並繼承MoPub所提供的CustomEventNative ==  &lt;br&gt;&lt;br&gt;  Class實作內容如下：&lt;br&gt;  &lt;source&gt; package com.taiwanmobile.pt.adp.nativeads  import android.content...</title>
		<link rel="alternate" type="text/html" href="https://wiki.tamedia.com.tw/wiki/index.php?title=Android_Mopub_Native_SDK8&amp;diff=1648&amp;oldid=prev"/>
		<updated>2021-08-31T07:18:49Z</updated>

		<summary type="html">&lt;p&gt;新頁面: == 建立一個Class並繼承MoPub所提供的CustomEventNative ==  &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;  Class實作內容如下：&amp;lt;br&amp;gt;  &amp;lt;source&amp;gt; package com.taiwanmobile.pt.adp.nativeads  import android.content...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新頁面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== 建立一個Class並繼承MoPub所提供的CustomEventNative ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Class實作內容如下：&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source&amp;gt;&lt;br /&gt;
package com.taiwanmobile.pt.adp.nativeads&lt;br /&gt;
&lt;br /&gt;
import android.content.Context&lt;br /&gt;
import android.view.View&lt;br /&gt;
import com.mopub.common.Preconditions&lt;br /&gt;
import com.mopub.common.logging.MoPubLog&lt;br /&gt;
import com.mopub.nativeads.BaseNativeAd&lt;br /&gt;
import com.mopub.nativeads.CustomEventNative&lt;br /&gt;
import com.taiwanmobile.pt.adp.view.TWMAd&lt;br /&gt;
import com.taiwanmobile.pt.adp.view.TWMAdRequest&lt;br /&gt;
import com.taiwanmobile.pt.adp.view.TWMAdViewListener&lt;br /&gt;
import com.taiwanmobile.pt.adp.view.TWMNativeAd&lt;br /&gt;
import com.mopub.common.logging.MoPubLog.AdapterLogEvent.CLICKED&lt;br /&gt;
import com.mopub.common.logging.MoPubLog.AdapterLogEvent.LOAD_SUCCESS&lt;br /&gt;
import com.mopub.common.logging.MoPubLog.AdapterLogEvent.LOAD_FAILED&lt;br /&gt;
import com.mopub.common.logging.MoPubLog.AdapterLogEvent.SHOW_SUCCESS&lt;br /&gt;
import com.mopub.common.logging.MoPubLog.AdapterLogEvent.WILL_DISAPPEAR&lt;br /&gt;
import com.taiwanmobile.pt.adp.nativead.TWMMediaContent&lt;br /&gt;
import com.taiwanmobile.pt.adp.nativead.TWMNativeAdOptions&lt;br /&gt;
&lt;br /&gt;
// 需將本class的完整類別名稱 com.taiwanmobile.pt.adp.nativeads.TAMediaMopubNative 填入後台的Custom Event Class欄位&lt;br /&gt;
class TAMediaMopubNative : CustomEventNative() {&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * TAMedia ad unit ID&lt;br /&gt;
     */&lt;br /&gt;
    private var adUnitId: String? = null&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Set MediaView unmuted in initial state&lt;br /&gt;
     */&lt;br /&gt;
    private var videoStartUnmuted: Boolean = false&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Display Image in MediaView&lt;br /&gt;
     */&lt;br /&gt;
    private var mediaPreferImage: Boolean = false&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * String to store the simple class name for this adapter.&lt;br /&gt;
     */&lt;br /&gt;
    private val adapterName: String = TAMediaMopubNative::class.java.simpleName&lt;br /&gt;
&lt;br /&gt;
    override fun loadNativeAd(context: Context,&lt;br /&gt;
                              customEventNativeListener: CustomEventNativeListener,&lt;br /&gt;
                              localExtras: Map&amp;lt;String, Any&amp;gt;,&lt;br /&gt;
                              serverExtras: Map&amp;lt;String, String&amp;gt;) {&lt;br /&gt;
&lt;br /&gt;
        Preconditions.checkNotNull(context)&lt;br /&gt;
        Preconditions.checkNotNull(customEventNativeListener)&lt;br /&gt;
        Preconditions.checkNotNull(localExtras)&lt;br /&gt;
        Preconditions.checkNotNull(context)&lt;br /&gt;
&lt;br /&gt;
        //後台設定的adUnitId會透過此Key值取得&lt;br /&gt;
        try {&lt;br /&gt;
            adUnitId = serverExtras.getValue(KEY_AD_UNIT_ID)&lt;br /&gt;
            if (serverExtras.containsKey(KEY_MEDIA_PREFER_IMAGE)) {&lt;br /&gt;
                mediaPreferImage = serverExtras.getValue(KEY_MEDIA_PREFER_IMAGE).toBoolean()&lt;br /&gt;
            }&lt;br /&gt;
            if (serverExtras.containsKey(KEY_VIDEO_START_UNMUTED)) {&lt;br /&gt;
                videoStartUnmuted = serverExtras.getValue(KEY_VIDEO_START_UNMUTED).toBoolean()&lt;br /&gt;
            }&lt;br /&gt;
            adUnitId?.let {&lt;br /&gt;
                val nativeAd = TAMediaNativeAd(customEventNativeListener)&lt;br /&gt;
                nativeAd.loadAd(context, it, mediaPreferImage, videoStartUnmuted)&lt;br /&gt;
            }&lt;br /&gt;
        } catch (e: Exception) {&lt;br /&gt;
            e.printStackTrace()&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * The class is used to load and map TAMedia native&lt;br /&gt;
     * ads to MoPub native ads.&lt;br /&gt;
     */&lt;br /&gt;
    inner class TAMediaNativeAd(listener: CustomEventNativeListener) :&lt;br /&gt;
        BaseNativeAd(), TWMAdViewListener {&lt;br /&gt;
&lt;br /&gt;
        // Native ad assets.&lt;br /&gt;
        var body: String? = null&lt;br /&gt;
        var shortSubject: String? = null&lt;br /&gt;
        var longSubject: String? = null&lt;br /&gt;
        var callToAction:String? = null&lt;br /&gt;
        var iconRect: TWMNativeAd.Image? = null&lt;br /&gt;
        var iconSquare: TWMNativeAd.Image? = null&lt;br /&gt;
        var image960x640: TWMNativeAd.Image? = null&lt;br /&gt;
        var image1200x627: TWMNativeAd.Image? = null&lt;br /&gt;
        var mediaContent: TWMMediaContent? = null&lt;br /&gt;
&lt;br /&gt;
        /**&lt;br /&gt;
         * A TAMedia native ad.&lt;br /&gt;
         */&lt;br /&gt;
        var nativeAd: TWMNativeAd? = null&lt;br /&gt;
&lt;br /&gt;
        /**&lt;br /&gt;
         * A custom event native listener used to forward TAMedia SDK events to MoPub.&lt;br /&gt;
         */&lt;br /&gt;
        private var customEventNativeListener: CustomEventNativeListener? = listener&lt;br /&gt;
&lt;br /&gt;
        /**&lt;br /&gt;
         * This method will load native ads from TAMedia for the given ad unit ID.&lt;br /&gt;
         *&lt;br /&gt;
         * @param context  required to request a TAMedia native ad.&lt;br /&gt;
         * @param adUnitId TAMedia's AdMob Ad Unit ID.&lt;br /&gt;
         * @param mediaPreferImage Display Image in MediaView&lt;br /&gt;
         * @param videoStartUnmuted Set MediaView unmuted in initial state&lt;br /&gt;
         */&lt;br /&gt;
        fun loadAd(context: Context,&lt;br /&gt;
                   adUnitId: String,&lt;br /&gt;
                   mediaPreferImage: Boolean,&lt;br /&gt;
                   videoStartUnmuted: Boolean&lt;br /&gt;
        ) {&lt;br /&gt;
            val nativeAdOptions = mutableListOf&amp;lt;TWMNativeAdOptions&amp;gt;().apply {&lt;br /&gt;
                if (mediaPreferImage) { add(TWMNativeAdOptions.MEDIA_PREFER_IMAGE) }&lt;br /&gt;
                if (videoStartUnmuted) { add(TWMNativeAdOptions.VIDEO_START_UNMUTED) }&lt;br /&gt;
            }&lt;br /&gt;
            nativeAd = TWMNativeAd(context, adUnitId)&lt;br /&gt;
            nativeAd?.setAdListener(this)&lt;br /&gt;
            nativeAd?.loadAd(TWMAdRequest().apply {&lt;br /&gt;
                if (nativeAdOptions.size &amp;gt; 0) {&lt;br /&gt;
                    setNativeAdOptions(nativeAdOptions.toTypedArray())&lt;br /&gt;
                }&lt;br /&gt;
            })&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        // BaseNativeAd&lt;br /&gt;
        override fun prepare(p0: View) {&lt;br /&gt;
        }&lt;br /&gt;
        override fun clear(p0: View) {&lt;br /&gt;
        }&lt;br /&gt;
        override fun destroy() {&lt;br /&gt;
            MoPubLog.log(getAdNetworkId(), WILL_DISAPPEAR, adapterName)&lt;br /&gt;
            nativeAd?.destroy()&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        // TWMAdViewListener&lt;br /&gt;
        override fun onDismissScreen(ad: TWMAd) {&lt;br /&gt;
        }&lt;br /&gt;
        override fun onFailedToReceiveAd(ad: TWMAd, errorCode: TWMAdRequest.ErrorCode) {&lt;br /&gt;
            MoPubLog.log(getAdNetworkId(), LOAD_FAILED, adapterName)&lt;br /&gt;
        }&lt;br /&gt;
        override fun onLeaveApplication(ad: TWMAd) {&lt;br /&gt;
            // notify MoPub click event&lt;br /&gt;
            this.notifyAdClicked()&lt;br /&gt;
            MoPubLog.log(getAdNetworkId(), CLICKED, adapterName)&lt;br /&gt;
        }&lt;br /&gt;
        override fun onPresentScreen(ad: TWMAd) {&lt;br /&gt;
            this.notifyAdImpressed()&lt;br /&gt;
            MoPubLog.log(getAdNetworkId(), SHOW_SUCCESS, adapterName)&lt;br /&gt;
        }&lt;br /&gt;
        override fun onReceiveAd(ad: TWMAd) {&lt;br /&gt;
            this.body = nativeAd?.nativeAdContent?.body&lt;br /&gt;
            this.shortSubject = nativeAd?.nativeAdContent?.shortSubject&lt;br /&gt;
            this.longSubject = nativeAd?.nativeAdContent?.longSubject&lt;br /&gt;
            this.callToAction = nativeAd?.nativeAdContent?.callToAction&lt;br /&gt;
            this.iconRect = nativeAd?.nativeAdContent?.iconRect&lt;br /&gt;
            this.iconSquare = nativeAd?.nativeAdContent?.iconSquare&lt;br /&gt;
            this.image960x640 = nativeAd?.nativeAdContent?.image960_640&lt;br /&gt;
            this.image1200x627 = nativeAd?.nativeAdContent?.image1200_627&lt;br /&gt;
            this.mediaContent = nativeAd?.nativeAdContent?.mediaContent&lt;br /&gt;
            customEventNativeListener?.onNativeAdLoaded(this)&lt;br /&gt;
            MoPubLog.log(getAdNetworkId(), LOAD_SUCCESS, adapterName)&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    private fun getAdNetworkId(): String? {&lt;br /&gt;
        return adUnitId&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    companion object {&lt;br /&gt;
        private const val KEY_AD_UNIT_ID = &amp;quot;adUnitId&amp;quot;&lt;br /&gt;
        private const val KEY_MEDIA_PREFER_IMAGE = &amp;quot;MEDIA_PREFER_IMAGE&amp;quot;&lt;br /&gt;
        private const val KEY_VIDEO_START_UNMUTED = &amp;quot;VIDEO_START_UNMUTED&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
[[Android Integeration with Mopub Mediation|回MoPub教學]]&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>imported&gt;Wikiuser</name></author>
	</entry>
</feed>