[Review] ติดโฆษณาบน Android App ของเรา ด้วย Facebook’s Audience Network : Part 2 การเขียนคำสั่ง

มาต่อกันเลย กับ Facebook’s Audience Network หากใครยังไม่รู้จัก หรือยังไม่ได้สมัครใช้งาน กลับไปอ่านบทความตอน [Review] ติดโฆษณาบน Android App ของเรา ด้วย Facebook’s Audience Network : Part 1 สมัครใช้งาน ก่อนนะครับ

Facebook Developers Logo

สำหรับบทความตอนนี้ ผมจะสอนตั้งแต่การนำ Audience Network Library มาใช้งาน การตั้งค่าต่าง ๆ จนถึงการเขียนคำสั่งเพื่อแสดงโฆษณา ในรูปแบบต่าง ๆ

เพื่อไม่ให้เป็นการเสียเวลา มาดูกันต่อเลยครับ…

 

List of contents

 

การนำ Audience Network Library มาใช้งาน

Audience Network Library นั้น ทาง Facebook ได้รวมอยู่ใน Facebook SDK for Android ไว้อยู่แล้ว เข้าไป Download ได้ที่ URL ด้านล่างนี่ครับ

https://developers.facebook.com/docs/android

เมื่อ Download มาแล้ว จะได้ไฟล์ zip มา เมื่อแตกไฟล์ออกมา จะพบกับไฟล์ AudienceNetwork.jar อยู่ที่ facebook-android-sdk-3.18 > AudienceNetwork > bin ดังรูป

Audience Network Library ภายใน Facebook SDK for Android
Audience Network Library ภายใน Facebook SDK for Android

ขณะเขียนบทความนี้ Facebook SDK for Android อยู่ที่ Version 3.18 หากผู้อ่าน Download มาแล้วได้ Version ใหม่กว่า สามารถเข้าไปดู Change Log 3.x เพื่อดูสิ่งที่เปลี่ยนแปลงในแต่ละ Version และ Upgrade Guide เพื่อจะได้ทราบว่า มีอะไรเปลี่ยนแปลงสำหรับ Audience Network Library บ้าง จะได้ปรับแก้ไขได้ถูกต้อง

ทำการ Import ไฟล์ AudienceNetwork.jar เข้าสู่ Folder libs ของ Project ใน Eclipse โดยการลากไฟล์ใส่เข้าไปเลย

Import Audience Network Library
Import Audience Network Library

นอกจากนี้ Audience Network Library ยังต้องการ Android v4 Support Library ด้วยนะ ซึ่งโดยทั่วไปจะมีอยู่แล้ว (ในรูปด้านบน คือไฟล์ android-support-v4.jar นั่นเอง) แต่ถ้า Project ของใครไม่มี สามารถหาได้จาก Android SDK ที่ Folder <android sdk>\extras\android\support\v4 นะครับ1

 

กำหนด Permission

สำหรับ Audience Network Library นั้น ต้องการ Android Permission 2 ตัวด้วยกัน คือ INTERNET และ ACCESS_NETWORK_STATE จึงต้องเพิ่มไปใน AndroidManifest.xml ดังนี้

 

สร้าง Placement ID

Placement ID คือ ID ของหน่วยโฆษณาที่เราสร้างขึ้น เพื่อเอาไว้อ้างอิงโฆษณาในแต่ละจุดที่เราจะนำไปติดใน App ซึ่งเราควรจะสร้าง Placement ID หนึ่ง สำหรับโฆษณาจุดหนึ่ง เพื่อที่จะได้แยกกันอิสระ รวมถึงเวลาเราดูรายงาน เพื่อนำไปวิเคราะห์ต่อได้ด้วย

วิธีสร้าง Placement ID นั้น ให้เข้าไปที่ Facebook Apps ที่เราสร้างไว้ ซึ่งในครั้งแรกหลังจาก Facebook อนุมัติ จะพบหน้าจอดังรูปด้านล่างนี้

เมนู Audience Network ใน Facebook Apps หลังจาก Facebook อนุมัติ
เมนู Audience Network ใน Facebook Apps หลังจาก Facebook อนุมัติ

รูปจาก https://developers.facebook.com/docs/audience-network/getting-started#company_info

ลืม Capture มาเอง เลยต้องยืมรูปจาก facebook -_-

ซึ่งก็คือ… Facebook จะให้เราใส่ข้อมูลเบื้องต้นเกี่ยวกับ ตัวเลือกการจ่ายเงิน” ระบุเกี่ยวกับข้อมูลบริษัทลงไปด้วย~!! โดยจะให้เราเลือกว่า จะใช้ข้อมูลบริษัทที่เคยใส่ไว้ หรือจะใส่เข้าไปใหม่ ซึ่งผมก็ใส่มั่ว ๆ ไป เพราะไม่ได้อยู่ในรูปแบบบริษัท เพื่อให้ผ่านหน้านี้ไปได้ก่อน แล้วไปแก้ไขเอาทีหลัง ซึ่งเราสามารถเข้าไปแก้ไขได้จากเมนู Company Settings ของ Facebook Developer Account ดังรูป

เมนู Company Settings บน Facebook Developer Account
เมนู Company Settings บน Facebook Developer Account

กลับมาที่เมนู Audience Network ของ Facebook Apps เรา ไปที่เมนู Audience Network (1) ที่ Tab Placements (2) แล้วคลิกปุ่ม Create Ad Placement (3)

Create Ad Placement เพื่อสร้าง Placement ID
Create Ad Placement เพื่อสร้าง Placement ID

จะพบกับหน้าต่าง Create Ad Placement โดยต้องระบุ ชื่อของ Ad Placement (1), รายละเอียดเกี่ยวกับตำแหน่งที่จะติดโฆษณา Steps to Trigger Ad (2), กำหนดอัตราการรีเฟรช Refresh Interval (3) (มีให้เลือกเป็น 30, 60, 90, 120 วินาที และไม่รีเฟรช) และ Status (4) สำหรับกำหนด Enable/Disable Placement นี้

ทั้ง 4 จุด สามารถแก้ไขทีหลังได้ แต่ต้องกำหนดให้ครบทุกจุด เมื่อเรียบร้อยแล้ว กดปุ่ม Save (5)

หน้าต่าง Create Ad Placement ระบุรายละเอียดของตำแหน่งที่จะติดโฆษณาใน App
หน้าต่าง Create Ad Placement ระบุรายละเอียดของตำแหน่งที่จะติดโฆษณาใน App

เราก็จะได้ Placement ID มาแล้ว ดังรูปด้านล่าง และจะมีปุ่ม Edit ให้เรากลับเข้าไปแก้ไข Ad Placement ของเราได้

ซึ่ง Placement ID นี้ล่ะ ที่เราจะต้องนำไปใส่ใน App ของเรา

Placement ID ได้มาหลังจากสร้าง Ad Placement แล้ว
Placement ID ได้มาหลังจากสร้าง Ad Placement แล้ว

ส่วนปุ่ม Get Code นั้น ทาง Facebook ได้ทำไว้ให้เราดู Code ตัวอย่าง เพื่ออำนวยความสะดวกในการนำ Placement ID ไปใช้ โดยเราสามารถเลือกได้ว่า จะรับ Code สำหรับ iOS หรือ Android และจะนำไปใช้เป็นโฆษณาในรูปแบบไหน

หน้าต่าง Simple Integration Code เมื่อกดปุ่ม Get Code
หน้าต่าง Simple Integration Code เมื่อกดปุ่ม Get Code

จุดนี้ขอชื่นชมว่า facebook ทำออกมาได้ค่อนข้างดี เพราะ Code ที่เตรียมไว้ พร้อมสำหรับนำไปใช้ทดสอบได้เลย แต่..!! ก็แค่พอใช้งานได้นะ ยังขาดรายละเอียดไปหลายอย่างเหมือนกัน

 

โฆษณาแบบ Banner

สำหรับโฆษณาแบบ Banner นั้น ในส่วนของ Design ทาง Audience Network จะให้เราสร้าง Layout เปล่า ๆ ไว้ใน Layout ของเรา ดังนี้

ในบทความนี้ ใช้ RelativeLayout ผู้อ่านจะใช้ LinearLayout หรือ Layout อื่น ๆ ก็ได้ ไม่ว่ากัน แต่ก็อย่าลืมทดสอบด้วยนะ

ตัวอย่างนี้ ผมต้องการให้โฆษณาแบบ Banner แสดงอยู่ขอบล่างของหน้าจอ ก็เลยกำหนดเพิ่มเติมเข้าไป รวม ๆ แล้ว ได้ออกมาเป็นไฟล์ activity_main.xml ดังนี้

หลังจากนั้น ในส่วนของ Activity ทำการ Import ดังนี้

และให้ประกาศตัวแปร ชนิด RelativeLayout และ AdView (จาก com.facebook.ads) ดังนี้

และประกาศตัวแปร Constant สำหรับเก็บค่า Placement ID ดังนี้

และประกาศตัวแปร Context ดังนี้

แล้วไปเขียน Code ใน onCreate() ของ Activity โดย Assign ค่าให้ตัวแปร Context และ RelativeLayout ก่อน ดังนี้

หลังจากนั้น ทำการสร้าง AdView ขึ้นมา ซึ่ง AdView ของ Audience Network มีรูปแบบดังนี้

  • AdView(Context context, String placementId, AdSize adSize)

Parameter มี 3 ตัว คือ Context, Placement ID และ AdSize ซึ่ง AdSize สำหรับ Banner นั้น มีให้ใช้งานอยู่ 3 รูปแบบ คือ

  • AdSize.BANNER_320_50 – สำหรับ Banner ขนาด 320 x 50 dp
  • AdSize.BANNER_HEIGHT_50 – สำหรับ Banner สูง 50 dp เหมาะสำหรับ Phone
  • AdSize.BANNER_HEIGHT_90 – สำหรับ Banner สูง 90 dp เหมาะสำหรับ Tablet

ก็จะได้เป็น

เมื่อสร้าง adView ขึ้นมาแล้ว ก็นำไปใส่ใน RelativeLayout ดังนี้

เมื่อเราต้องการแสดงโฆษณาแบบ Banner เมื่อใด ก็เรียกใช้งาน Method loadAd() ของ AdView ซึ่งมีรูปแบบดังนี้

  • void loadAd()

ก็จะได้เป็น

และที่ onDestroy() ของ Activity ก็ควรเรียกใช้ Method destroy() ของ AdView ซึ่งมีรูปแบบดังนี้

  • void destroy()

ก็จะได้เป็น

และหากว่า ต้องการตรวจสอบผลการโหลดโฆษณา สามารถใช้ Method setAdListener() ของ AdView เพื่อตรวจสอบ ซึ่งมีรูปแบบดังนี้

  • void setAdListener(AdListener adListener)

สำหรับ AdListener นั้นเป็น Interface ซึ่งจะให้เรา Implement Callback Method 3 ตัวด้วยกัน ดังนี้

  • void onError(Ad ad, AdError error) – เกิดเมื่อเกิด Error
  • void onAdLoaded(Ad ad) – เกิดเมื่อ Load โฆษณาสำเร็จ
  • void onAdClicked(Ad ad) – เกิดเมื่อมีการคลิกโฆษณา

รวม ๆ แล้ว ปรับ Code นิดหน่อย ก็จะได้ไฟล์ MainActivity.java ดังนี้

เท่านี้ก็สามารถแสดงโฆษณาแบบ Banner ได้แล้ว…

การแสดงผลโฆษณาแบบ Banner จาก Audience Network
การแสดงผลโฆษณาแบบ Banner จาก Audience Network

 

โฆษณาแบบ Interstitial (หรือ Full Screen)

สำหรับโฆษณาแบบ Interstitial นั้น จะเป็นการเปิด Activity ใหม่ จึงต้องทำการเพิ่ม Activity ไว้ที่ AndroidMenifest.xml ก่อน ดังนี้

หลังจากนั้น ในส่วนของ Activity ทำการ Import ดังนี้

และให้ประกาศตัวแปร ชนิด InterstitialAd (จาก com.facebook.ads) ดังนี้

และประกาศตัวแปร Constant สำหรับเก็บค่า Placement ID ดังนี้

และประกาศตัวแปร Context ดังนี้

แล้วไปเขียน Code ใน onCreate() ของ Activity โดย Assign ค่าให้ตัวแปร Context ก่อน ดังนี้

หลังจากนั้น ทำการสร้าง InterstitialAd ขึ้นมา ซึ่ง InterstitialAd ของ Audience Network มีรูปแบบดังนี้

  • InterstitialAd(Context context, String placementId)

Parameter มี 2 ตัว คือ Context และ Placement ID นั่นเอง

ก็จะได้เป็น

แล้วก็ใช้ Method loadAd() ของ InterstitialAd ซึ่งมีรูปแบบดังนี้

  • void loadAd()

ก็จะได้เป็น

ซึ่ง Method loadAd() ของ InterstitialAd นั้น ต่างจากของ AdView ที่ใช้แสดงแบบ Banner อยู่นิดหน่อย เพราะของ AdView จะแสดงโฆษณาออกมาเลย แต่ของ InterstitialAd นั้น จะยังไม่แสดง

หลังจากสั่ง loadAd() แล้ว เราสามารถตรวจสอบก่อน ว่าทำการโหลดโฆษณาได้เรียบร้อยหรือไม่ ด้วย Method isAdLoaded() โดยมีรูปแบบดังนี้

  • boolean isAdLoaded()

ก็จะได้เป็น

ซึ่ง Method isAdLoaded() นั้น Return เป็นชนิด boolean ทำให้เราตรวจสอบได้ว่า โฆษณาได้ถูกโหลดแล้วหรือยัง

และเมื่อโฆษณาถูกโหลดเรียบร้อยแล้ว เมื่อต้องการแสดงโฆษณาที่จุดใด ก็เรียกใช้ Method show() เพื่อแสดงโฆษณาแบบ Interstitial ออกมา ซึ่งมีรูปแบบดังนี้

  • boolean show()

ก็จะได้เป็น

ซึ่ง Method show() ก็มี Return เป็นชนิด boolean เช่นกัน ซึ่งจะ Return เป็น false หากเรียกใช้งานในขณะที่โฆษณายังไม่ถูกโหลด

และที่ onDestroy() ของ Activity ก็ควรเรียกใช้ Method destroy() ของ InterstitialAd ซึ่งมีรูปแบบดังนี้

  • void destroy()

ก็จะได้เป็น

และหากว่า ต้องการตรวจสอบผลการโหลดโฆษณา สามารถใช้ Method setAdListener() ของ InterstitialAd เพื่อตรวจสอบ ซึ่งมีรูปแบบดังนี้

  • void setAdListener(InterstitialAdListener adListener)

สำหรับ InterstitialAdListener นั้นเป็น Interface ซึ่งจะให้เรา Implement Callback Method 5 ตัวด้วยกัน ดังนี้

  • void onError(Ad ad, AdError error) – เกิดเมื่อเกิด Error
  • void onAdLoaded(Ad ad) – เกิดเมื่อ Load โฆษณาสำเร็จ
  • void onAdClicked(Ad ad) – เกิดเมื่อมีการคลิกโฆษณา
  • void onInterstitialDisplayed(Ad ad) – เกิดเมื่อมีการแสดงโฆษณา
  • void onInterstitialDismissed(Ad ad) – เกิดเมื่อโฆษณาถูกปิด

รวม ๆ แล้ว ปรับ Code นิดหน่อย ก็จะได้ไฟล์ MainActivity.java ดังนี้

เท่านี้ก็สามารถแสดงโฆษณาแบบ Interstitial ได้แล้ว…

การแสดงผลโฆษณาแบบ Interstitial จาก Audience Network
การแสดงผลโฆษณาแบบ Interstitial จาก Audience Network

 

โฆษณาแบบ Native

สำหรับโฆษณาแบบ Native นั้น ทาง Audience Network เปิดให้เราสามารถปรับแต่งได้เองอย่างอิสระ เพราะฉะนั้น เราจะเริ่มกันที่การ Design ส่วนของ Native Ad ก่อน

เพื่อความสะดวก ผมแนะนำให้สร้าง Layout ใหม่ขึ้นมา แล้ว Design รูปแบบโฆษณาไว้ก่อนเลย

ตัวอย่างด้านล่างนี้ ผมได้สร้าง Layout ใหม่ ให้ชื่อไฟล์ว่า native_ad.xml โดยการวาง Layout นั้น ผมได้ลอกบางส่วนมาจากตัวอย่างใน SDK ดังนี้

Native Ad และชื่อ ID ของ View ต่าง ๆ
Native Ad และชื่อ ID ของ View ต่าง ๆ

ส่วน Layout ที่จะแสดงโฆษณา ให้สร้าง Layout เปล่า ๆ ที่จะใช้แสดงในตำแหน่งตามต้องการ

ตัวอย่างด้านล่าง ผมจะใช้ LinearLayout แสดงอยู่กลางหน้าจอ ภายใน RelativeLayout

หลังจากนั้น ในส่วนของ Activity ทำการ Import ดังนี้

และให้ประกาศตัวแปร ชนิด NativeAd (จาก com.facebook.ads) ดังนี้

และประกาศตัวแปร Constant สำหรับเก็บค่า Placement ID ดังนี้

และประกาศตัวแปร Context ดังนี้

แล้วไปเขียน Code ใน onCreate() ของ Activity โดย Assign ค่าให้ตัวแปร Context ก่อน ดังนี้

หลังจากนั้น ทำการสร้าง NativeAd ขึ้นมา ซึ่ง NativeAd ของ Audience Network มีรูปแบบดังนี้

  • NativeAd(Context context, String placementId)

Parameter มี 2 ตัว คือ Context และ Placement ID นั่นเอง

ก็จะได้เป็น

แล้วก็ใช้ Method loadAd() ของ NativeAd ซึ่งมีรูปแบบดังนี้

  • void loadAd()

ก็จะได้เป็น

ซึ่ง Method loadAd() ของ NativeAd นั้น จะเหมือนกับของ InterstitialAd เลย ก็คือ จะยังไม่แสดงโฆษณาออกมา

หลังจากสั่ง loadAd() แล้ว เราสามารถตรวจสอบก่อน ว่าทำการโหลดโฆษณาได้เรียบร้อยหรือไม่ ด้วย Method isAdLoaded() ของ NativeAd โดยมีรูปแบบดังนี้

  • boolean isAdLoaded()

ก็จะได้เป็น

ซึ่ง Method isAdLoaded() นั้น Return เป็นชนิด boolean ทำให้เราตรวจสอบได้ว่า โฆษณาได้ถูกโหลดแล้วหรือยัง

และเมื่อโฆษณาถูกโหลดเรียบร้อยแล้ว ก็ถึงคราวที่จะแสดงโฆษณา ซึ่งจะมีชิ้นส่วนของโฆษณาส่งมาให้ทั้งหมด 7 ชิ้น โดยจะมี Method ของ NativeAd ให้เรียกใช้ เพื่ออ่านค่าออกมา 7 ตัว มีรูปแบบดังนี้

  • String getAdBody()
  • String getAdCallToAction()
  • NativeAd.Image getAdCoverImage()
  • NativeAd.Image getAdIcon()
  • String getAdSocialContext()
  • NativeAd.Rating getAdStarRating()
  • String getAdTitle()

ทั้ง 7 Method จะมี Return เป็นข้อความ (String) อยู่ 4 ชิ้น NativeAd.Image อยู่ 1 ชิ้น และ NativeAd.Rating อยู่ 1 ชิ้น ซึ่งเราเลือกที่จะนำไปใช้อย่างไรก็ได้

ในตัวอย่างนี้ จะนำไปใช้ทุกชิ้น เพื่อแสดงออกมาให้เห็นว่า แต่ละชิ้น จะแสดงอะไรออกมาบ้าง

ข้อมูลโฆษณาที่โหลดมานั้น จะมีอายุใช้งานได้ 1 ชั่วโมง หากเกินกว่านี้ ต้องทำการโหลดใหม่

สำหรับการใช้งาน Method ทั้ง 7 ผมจะพักข้อมูลไว้ที่ตัวแปรตามชนิดข้อมูลที่ Method นั้น Return ออกมา ดังนี้

ก่อนจะนำแต่ละชิ้นไปแสดงผล จะต้องโหลด Layout ที่ออกแบบไว้ ลงใน Layout ที่จะแสดงผล โดยใช้ LayoutInflater ทำการ Inflate มา ดังนี้

และทำการอ้างอิงไปยัง View ต่าง ๆ ใน Layout ดังนี้

สำหรับชิ้นส่วนที่เป็น String ก็ไม่มีอะไรยุ่งยาก นำไปกำหนดค่าได้เลย

ส่วนชิ้นส่วนที่เป็น NativeAd.Image จะมี Method downloadAndDisplayImage() ของ NativeAd ในการ Download รูป ซึ่งจะเป็นการนำรูปที่ได้ ไปใส่ใน ImageView ให้ โดยมีรูปแบบดังนี้

  • static void downloadAndDisplayImage(NativeAd.Image image, ImageView imageView)

วิธีใช้งานก็…

และชิ้นส่วนที่เป็น NativeAd.Rating นั้น จะมี Method ของ Class NativeAd.Rating ให้เรียกใช้อยู่ 2 Method ดังนี้

  • double getScale()
  • double getValue()

เราก็สามารถนำไปกำหนดค่าให้ RatingBar ได้ ดังนี้

และจุดที่สำคัญก็คือ กำหนดให้ View ต่าง ๆ สามารถคลิกได้ โดยใช้ Method registerViewForInteraction() ของ NativeAd ซึ่งมีรูปแบบการใช้งาน 2 รูปแบบ ดังนี้

  • void registerViewForInteraction(View view) – ใช้สำหรับกำหนดให้ทั้ง Native Ad คลิกได้
  • void registerViewForInteraction(View view, List<View> clickableViews) – ใช้สำหรับกำหนดให้ View เฉพาะที่ต้องการภายใน Native Ad คลิกได้

สำหรับรูปแบบแรก นำไปใช้งานได้ดังนี้

ส่วนรูปแบบที่สอง นำไปใช้งานได้ดังนี้

Code ด้านบน เป็นการกำหนดให้คลิกได้ 2 View คือ nativeAdImage และ nativeAdCallToAction

หากว่ามีการเรียกใช้ Method loadAd() เพื่อเปลี่ยนโฆษณา จำเป็นต้องทำการยกเลิกการคลิก ที่ทำการ register ไว้ ด้วย Method unregisterView() ของ NativeAd โดยมีรูปแบบดังนี้

  • void unregisterView()

วิธีใช้ก็แค่…

และที่ onDestroy() ของ Activity ก็ควรเรียกใช้ Method destroy() ของ NativeAd ซึ่งมีรูปแบบดังนี้

  • void destroy()

ก็จะได้เป็น

และหากว่า ต้องการตรวจสอบผลการโหลดโฆษณา สามารถใช้ Method setAdListener() ของ NativeAd เพื่อตรวจสอบ ซึ่งมีรูปแบบดังนี้

  • void setAdListener(AdListener adListener)

สำหรับ AdListener นั้นเป็น Interface ซึ่งจะให้เรา Implement Callback Method 3 ตัวด้วยกัน ดังนี้

  • void onError(Ad ad, AdError error) – เกิดเมื่อเกิด Error
  • void onAdLoaded(Ad ad) – เกิดเมื่อ Load โฆษณาสำเร็จ
  • void onAdClicked(Ad ad) – เกิดเมื่อมีการคลิกโฆษณา

รวม ๆ แล้ว ปรับ Code นิดหน่อย ก็จะได้ไฟล์ MainActivity.java ดังนี้

สำหรับ Method setCoverImageSettings() ในบรรทัดที่ 120-133 เป็นการคำนวณและกำหนดขนาดของรูป Cover Image ไม่เกี่ยวกับการเขียนคำสั่งเพื่อแสดงโฆษณาแต่อย่างใด

เท่านี้ก็สามารถแสดงโฆษณาแบบ Native ได้แล้ว…

การแสดงผลโฆษณาแบบ Native จาก Audience Network
การแสดงผลโฆษณาแบบ Native จาก Audience Network

ขอบขาว ๆ ที่เห็น นั่นคือพื้นที่ของ nativeAdContainer ซึ่งผมกำหนดให้มี Padding ขนาด 8dp ก็เลยเห็น Native Ad แสดงอยู่ภายในโดยเว้นห่าง nativeAdContainer ด้านละ 8dp นั่นเอง

 

การทดสอบ

สำหรับการทดสอบนั้น เราสามารถกำหนด Device ที่ใช้ทดสอบ ได้จาก Method ของ Class AdSettings ได้ 2 ตัว คือ

  • static void addTestDevice(String deviceIdHash)
  • static void addTestDevices(Collection<String> deviceIdHashes)

Method แรก ไว้เพิ่มทีละ 1 Device ส่วน Method ที่สอง ไว้เพิ่มทีละเป็นกลุ่ม

ซึ่งต้องใช้คำสั่งนี้ก่อนการเรียกใช้ Method loadAd() ของโฆษณาทุกรูปแบบ

ซึ่งเราหาค่า Device ID Hash ได้จากการ Run app แล้วหาค่า ID จาก LogCat (1) โดย Search คำว่า text:test (2) ก็จะพบกับค่า Device ID Hash (3) ตามรูป

หาค่า Device ID Hash จาก LogCat
หาค่า Device ID Hash จาก LogCat

ตัวอย่างการใช้งานก็…

หรือ

ซึ่งจะแสดงโฆษณาสำหรับกรณีทดสอบ ในแบบ Banner, Interstitial และ Native ดังรูป

โฆษณาทดสอบแบบ Banner, Interstitial และ Native ตามลำดับ
โฆษณาทดสอบแบบ Banner, Interstitial และ Native ตามลำดับ

 

สำหรับวิธีการเขียนคำสั่งแสดงโฆษณา ของ Facebook’s Audience Network ก็มีเพียงเท่านี้ หวังว่าคงมีประโยชน์กับผู้ที่สนใจนะครับ

เหนื่อยจัง กว่าจะเขียนเสร็จก็ตั้งหลายวัน >_<


1 Support Library Setup | Android Developers

1 Comment


  1. ไม่มีการตั้งค่าสำหรับ ios บ้างเหรอคะ ไปไม่เป็นเลย

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *