ข้ามไปที่เนื้อหา

AdKit Unity สำหรับ DARO

AdKit Unity สำหรับ DARO เป็นโมดูลโฆษณาสำหรับ Unity ที่พัฒนาด้วย DARO API เมื่อใช้ร่วมกับ SDK หรือโมดูลแยก ระบบจะส่ง log ไปยังเซิร์ฟเวอร์ Analytics จึงไม่ต้องวิเคราะห์โฆษณาแยกต่างหาก นอกจากนี้ยังช่วยให้ผู้ใช้ Hive SDK แก้ไขข้อผิดพลาดและลดการลองผิดลองถูกเมื่อนำแพ็กเกจ Unity ของ DARO ไปใช้

คู่มือนี้อธิบายวิธีติดตั้ง AdKit Unity สำหรับ DARO การตั้งค่าล่วงหน้าสำหรับสภาพแวดล้อม Unity ของแต่ละ OS และวิธีใช้แต่ละฟีเจอร์

การติดตั้งหรืออัปเดต

หากคุณกำลังใช้ AdKit สำหรับ DARO เป็นครั้งแรก ให้ติดตั้งตามลำดับต่อไปนี้

ทางเลือกหนึ่ง หากคุณต้องการอัปเดตการติดตั้ง AdKit ที่มีอยู่ ให้ ลบ เวอร์ชันที่ติดตั้งอยู่แล้วและติดตั้งเวอร์ชันล่าสุดของ AdKit สำหรับ DARO ตามลำดับต่อไปนี้

  1. ดาวน์โหลดและติดตั้งเวอร์ชันล่าสุดของ AdKit สำหรับ DARO.
  2. ในแถบเครื่องมือ Unity ให้ไปที่ Assets > Import Package > Custom Package... เลือกไฟล์ .unitypackage และคลิก Import.

  3. หลังจากการนำเข้าครบถ้วน ให้ตรวจสอบว่าไฟล์และโฟลเดอร์ที่เกี่ยวข้องกับ Hive AdKit และ DARO ได้ถูกสร้างขึ้นภายใต้โฟลเดอร์ Assets แล้ว

  4. ดาวน์โหลด และติดตั้งเวอร์ชันล่าสุดของ EDM4U. EDM4U รวมอยู่ใน Hive SDK v4 หากคุณกำลังใช้ Hive SDK v4 โปรดข้ามขั้นตอนนี้.

ลบ

เพื่อลบ Hive AdKit สำหรับ DARO ให้ลบโฟลเดอร์ต่อไปนี้ในโปรเจกต์ Unity ของคุณ:

  • Assets/HIVEAdKit
  • Assets/HIVEAdKit_Example

การกำหนดค่าขั้นตอนก่อน

หลังจากติดตั้ง AdKit สำหรับ DARO แล้ว ให้เพิ่มค่าคีย์ DARO สำหรับแต่ละ OS และตรวจสอบการตั้งค่า build ที่จำเป็น

Android

เพิ่มค่าคีย์ที่ดาวน์โหลดจากแดชบอร์ด DARO ลงในโปรเจกต์ Unity ที่ใช้ Android

  1. คัดลอกไฟล์ android-daro-key.txt ที่ดาวน์โหลดไปยังโฟลเดอร์ HIVEAdKit/Plugins/Android
    • ดาวน์โหลดไฟล์ android-daro-key.txt ได้โดยคลิก Download ใน 'Key File' ที่หน้า DARO Dashboard - Apps
  2. เพิ่ม daroAppKey ลงใน gradleTemplate.properties ดังนี้
    daroAppKey=INPUT_DARO_APP_KEY
    
    • ตรวจสอบ daroAppKey ได้ใน 'DARO App Key' ที่หน้า DARO Dashboard - Apps

iOS

เพิ่มค่าคีย์ที่ดาวน์โหลดจากแดชบอร์ด DARO ลงในโปรเจกต์ Unity ที่ใช้ iOS

  1. คัดลอกไฟล์ ios-daro-key.txt ที่ดาวน์โหลดไปยังโฟลเดอร์ HIVEAdKit/Plugins/iOS
  2. ในไฟล์ HIVEAdKit/Editor/iOSAdKitPostBuildProcessor.cs ให้ยกเลิก comment ของ Google AdMob appId และ Daro App Key ตามตัวอย่างด้านล่าง แล้วป้อนค่าที่เกี่ยวข้อง
    // Set GADApplicationIdentifier (Please contact Daro for your own ADMOB APPID)
    //rootDict.SetString("GADApplicationIdentifier", "YOUR GOOGLE ADMOB APPID");
    
    // Set DaroAppKey (Please contact DARO for your own Daro App Key)
    //rootDict.SetString("DaroAppKey", "YOUR Daro App Key");
    

ตรวจสอบการตั้งค่า build ของ iOS

เมื่อ build โปรเจกต์ iOS ระบบจะสร้าง target UnityFramework ที่ทำงานเป็น Dynamic Framework

  1. ตั้งค่า EDM4U (อ้างอิงเวอร์ชัน 1.2.179) ใน iOS Resolver Settings ของ Unity (Assets > External Dependency Manager > iOS Resolver > Settings) ให้ตรวจสอบว่าได้ตั้งค่า build แบบ static_framework แล้ว

  2. Build โปรเจกต์ เมื่อ build เสร็จแล้ว ให้เปิด Podfile ในเส้นทาง root ของโปรเจกต์ที่สร้างขึ้นและตรวจสอบการตั้งค่า

    source 'https://github.com/Com2uSPlatformCorp/HiveAdKit-iOS.git'
    source 'https://cdn.cocoapods.org/'
    
    platform :ios, '13.0'
    
    target 'UnityFramework' do
      pod 'HiveAdKit_DARO_UnityPlugin', '1.5.4'
    end
    target 'Unity-iPhone' do
    end
    use_frameworks!
    
Warning

ก่อน build บริการเวอร์ชันใช้งานจริงที่ใช้ AdKit Unity ต้องลบโฟลเดอร์ Assets/HIVEAdKit_Example มิฉะนั้นอาจมีการรวมการตั้งค่า HIVEAdKit Example

การกำหนดค่าของ DARO Proguard

กฎ Proguard รวมอยู่ในไฟล์ AAR ของไลบรารี จึงนำไปใช้โดยอัตโนมัติโดยไม่ต้องตั้งค่าเพิ่มเติม

คู่มือการใช้งาน

ส่วนนี้อธิบายวิธีตั้งค่าและเรียก API เพื่อใช้ฟีเจอร์ AdKit Unity สำหรับ DARO

การเริ่มต้น AdKit

  • หากแอปมุ่งเป้าไปที่ยุโรปและสหราชอาณาจักร (EEA & UK) ให้เรียก API ShowConsentUI เพื่อแสดงป๊อปอัปความยินยอม GDPR แล้วจึงเริ่มต้น AdKit หากให้บริการเฉพาะในประเทศ ให้เรียก API HIVEAdKit.Initialize เพื่อเริ่มต้นโดยตรง
    API ทั้งหมดที่คลาส HIVEAdKit ให้บริการต้องเรียกจาก เธรดหลัก ของ Unity ตามตัวอย่างด้านล่าง
using hive.adkit.daro;

// Call GDPR popup
public void ShowGDPR(string noticeId)
{
    HIVEAdKit.ShowConsentUI(noticeId, () =>
    {
        initSdk();
    });
}

// Hive AdKit initialization
public void initSdk()
{
    HIVEAdKit.Initialize(isSuccess =>
    {
        if (isSuccess)
            Debug.Log("AdKit SDK initialization successful!");
        else
            Debug.Log("AdKit SDK initialization failed!");
    });
}

การใช้ callback

ในการใช้ฟังก์ชัน callback คุณต้องเรียก HIVEAdKit.InitPlugin เพื่อลงทะเบียน AdKitCallbackManager เป็น GameObject.
เรียกในบล็อกโค้ด Start เมื่อแอปเริ่มทำงาน

using hive.adkit.daro;

void Start()
{
    HIVEAdKit.InitPlugin(); // Create game object for Hive AdKit callback registration
}

การตั้งค่าข้อมูลเพิ่มเติม

คุณสามารถตั้งค่าข้อมูลเพิ่มเติมได้ โค้ดการใช้งานมีดังนี้:

using hive.adkit.daro;

[Serializable]
public class SendInfo 
{
    public int level;
    public int gold;
}

SendInfo addtionalInfo = new SendInfo();

public void SetAdditionalInfo()
{
    addtionalInfo.level = 1;
    addtionalInfo.gold = 100;

    // Send as JSON Object format
    HIVEAdKit.SetAdditionalInfo(JsonUtility.ToJson(addtionalInfo));
}

ฟีเจอร์โฆษณาแบบให้รางวัล

ฟีเจอร์นี้มอบรางวัลเมื่อรับชมโฆษณาตามระยะเวลาที่กำหนด และโหลดโฆษณาได้ครั้งละหนึ่งรายการเท่านั้น โค้ดการใช้งานมีดังนี้

using hive.adkit.daro;

private HIVEAdKit.RewardVideo RewardVideoAd = null;

public void InitRewardedAd()
{
    // Set Event Callback
    EventHandlers eventHandlers = new EventHandlers.Builder()
                                                    .OnAdLoaded(OnRewardVideoAdLoadedCB)
                                                    .OnAdOpening(OnRewardVideoAdOpeningCB)
                                                    .OnAdClosed(OnRewardVideoAdClosedCB)
                                                    .OnAdFailed(OnRewardVideoAdFailedCB)
                                                    .OnAdReward(OnRewardVideoAdRewardCB)
                                                    .OnAdClick(OnRewardVideoAdClickCB)
                                                    .OnAdPaidEvent(OnRewardVideoAdPaidEventCB)
                                                    .Build();

    // Create RewardVideoAd Instance
    RewardVideoAd = HIVEAdKit.RewardVideo.Initialize(rewardVideoUnitId, eventHandlers);
}

public void LoadRewardedAd()
{
    // Load RewardVideoAd
    HIVEAdKit.RewardVideo.Load(RewardVideoAd, "Unity-RewardVideo-Load-AdPlacementInfo");
}

public void ShowRewardedAd()
{
    // Show RewardVideoAd
    if( HIVEAdKit.RewardVideo.IsLoaded(RewardVideoAd) ) {
        HIVEAdKit.RewardVideo.Show(RewardVideoAd, "Unity-RewardVideo-Show-AdPlacementInfo");
    }
}

public void DestroyRewardedAd()
{
    // Destroy RewardVideoAd
    HIVEAdKit.RewardVideo.Destroy(RewardVideoAd);
    RewardVideoAd = null;
}

ฟีเจอร์โฆษณาแบบแทรก

ให้ฟีเจอร์โฆษณาแบบแทรกที่ครอบคลุมทั้งหน้าจอ รหัสการใช้งานมีดังนี้:

using hive.adkit.daro;

private HIVEAdKit.Interstitial InterstitialAd = null;

public void InitRewardedAd(string unitId)
{
    // Set Event Callback
    EventHandlers eventHandlers = new EventHandlers.Builder()
                                                .OnAdLoaded(OnInterstitialAdLoadedCB)
                                                .OnAdOpening(OnInterstitialAdOpeningCB)
                                                .OnAdClosed(OnInterstitialAdClosedCB)
                                                .OnAdFailed(OnInterstitialAdFailedCB)
                                                .OnAdClick(OnInterstitialAdClickCB)
                                                .OnAdPaidEvent(OnInterstitialAdPaidEventCB)
                                                .Build();

    // Create InterstitialAd Instance                                               
    InterstitialAd = HIVEAdKit.Interstitial.Initialize(unitId, eventHandlers);
}

public void LoadInterstitialAd()
{
    // Load InterstitialAd
    HIVEAdKit.Interstitial.Load(InterstitialAd, "Unity-Interstitial-Load-AdPlacementInfo");
}

public void ShowInterstitialAd()
{
    // Show InterstitialAd
    if( HIVEAdKit.Interstitial.IsLoaded(InterstitialAd) ) {
        HIVEAdKit.Interstitial.Show(InterstitialAd, "Unity-Interstitial-Show-AdPlacementInfo");
    }
}

public void DestroyInterstitialAd()
{
    // Destroy InterstitialAd
    HIVEAdKit.Interstitial.Destroy(InterstitialAd);
    InterstitialAd = null;
}

ให้ฟีเจอร์โฆษณาแบนเนอร์ที่ใช้พื้นที่บางส่วนของหน้าจอ คุณสามารถปรับตำแหน่งแบนเนอร์ไปที่ด้านบนหรือล่างของหน้าจอโดยการป้อน BannerPosition.
โฆษณาแบนเนอร์จะไม่ได้รับการเรียกกลับ OnAdClosed()

using hive.adkit.daro;

private HIVEAdKit.Banner BannerAd = null;

public void InitBannerAd(string unitId)
{
    // Set Event Callback
    EventHandlers eventHandlers = new EventHandlers.Builder()
                                                .OnAdLoaded(OnBannerAdLoadedCB)
                                                .OnAdFailed(OnBannerAdFailedCB)
                                                .OnAdClick(OnBannerAdClickCB)
                                                .OnAdPaidEvent(OnBannerAdPaidEventCB)
                                                .Build();

    BannerAd = HIVEAdKit.Banner.Initialize(unitId, BannerPosition.Bottom, eventHandlers);
}

public void LoadBannerAd()
{
    // Automatic Load & Show BannerAd
    HIVEAdKit.Banner.Load(BannerAd, "Unity-Banner-Load-AdPlacementInfo");
}

public void DestroyBannerAd()
{
    // Destroy BannerAd
    HIVEAdKit.Banner.Destroy(BannerAd);
    BannerAd = null;
}

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

Planet Explore ใช้โมดูลโฆษณา DARO เพื่อเพิ่มประสิทธิภาพและแสดงโฆษณาแบนเนอร์และโฆษณาคั่นระหว่างหน้า ดาวน์โหลด Planet Explore เพื่อดูตัวอย่างการใช้งาน DARO จริง

โฆษณาแบนเนอร์

โฆษณาคั่นระหว่างหน้า