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

Cpp

AdKit สำหรับ ADOP: C++

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

คู่มือนี้อธิบายวิธีการติดตั้ง AdKit สำหรับ ADOP ด้วย Cocos C++ เพื่อให้ผู้ใช้ SDK ของ Hive ใช้ ADOP ภายใต้สภาพแวดล้อมการพัฒนา C++ AdKit สำหรับ ADOP ด้วย C++ สามารถทำงานบนแพลตฟอร์ม iOS และ Android และคุณสามารถดูวิธีการตั้งค่าสำหรับแต่ละแพลตฟอร์มได้ในหน้านี้

การสร้างสภาพแวดล้อมการพัฒนา

ติดตามคำแนะนำด้านล่างสำหรับแต่ละแพลตฟอร์มเพื่อกำหนดค่า AdKit.

Android

สร้าง AdKit SourceCode ที่ฝังอยู่ใน SDK เพื่อใช้ AdKit แนะนำให้ใช้ Android Studio 4.2 ขึ้นไป

  1. ExternalNativeBuild ใช้ #cmake เพิ่มโค้ดต่อไปนี้ลงในไฟล์ CMakeList.txt

    // 'CMakeList.txt'
    
    set(HIVEADKIT_DIR_PATH ....../HIVEAdKit) #setup to HIVEAdKit path
    #HIVEAdKit library import after add_library( MyGame ... )
    add_subdirectory(${HIVEADKIT_DIR_PATH}) #HIVEAdKit library & macro load
    use_hiveadkit_prebuilt(${HIVEADKIT_DIR_PATH} MyGame) #library import automatic macro to build target
    
  2. เพิ่มโค้ดต่อไปนี้ลงในไฟล์ build.gradle

    apply from: '../../HIVEAdkit/adkit.gradle'
    
    แอนดรอยด์ {
    ...
    sourceSets.main {
            java.srcDirs "src" , "../../HIVEAdKit/Android/java" // HIVEAdKit JavaPlugin Source Path
    }
    ...
    }
    
  3. เพิ่ม AdMobId ซึ่งมีรูปแบบเป็น ca-app-pub-XXXXX~YYYYY ลงในไฟล์ AndroidManifest.xml

    <application>
    <meta-data android:name="com.google.android.gms.ads.AD_MANAGER_APP" android:value="true" />
    <meta-data
        android:name="com.google.android.gms.ads.APPLICATION_ID"
        android:value="ca-app-pub-XXXXX~YYYYY"/>
    </application>
    

iOS

สร้าง AdKit SourceCode ที่ฝังอยู่ใน SDK เพื่อใช้ AdKit.

  1. ลากและวางโฟลเดอร์ HIVEAdKit/src และ HIVEAdKit/include ไปยังโปรเจกต์ XCode. * รวมไฟล์ทั้งหมดที่มีนามสกุล .cpp, .hpp และ .mm. * AdKit ให้โค้ดแบบสะพานสำหรับการใช้งานจริง.

  2. เพิ่ม HIVEAdKit/include/bidmad ไปที่ Project > BuildSetting > Search Paths.

  3. เพิ่ม GADApplicationIdentifier ไปที่ Info.plist ของโปรเจกต์ Xcode ที่สร้างจาก Unity build และป้อน AdMobId ซึ่งมีรูปแบบเป็น ca-app-pub-XXXXX~YYYYY ในประเภทสตริง

    GADApplicationIdentifier
    ca-app-pub-XXXXX~YYYYY
    

    บน iOS 14 และสูงกว่า, เพิ่ม SKAdNetworkItems ลงใน Info.plist.

  4. เพิ่มสิ่งต่อไปนี้ในการตั้งค่า CocoaPods

    แพลตฟอร์ม :ios, '11.0'
    
       target 'MyGame-mobile' do
           use_frameworks! :linkage => :static
    
           pod 'BidmadSDK', '4.0.1.1'
           pod 'OpenBiddingHelper', '4.0.1.1'
           pod 'BidmadAdapterFNC/ForGame', '4.0.0.2'
           pod 'BidmadAdapterFC', '4.0.0.0'
    
       สิ้นสุด
    
  5. รันคำสั่งต่อไปนี้เพื่อใช้การตั้งค่า CocoaPod

    $pod install
    

วิธีการใช้งาน

คีย์โฆษณาทดสอบใน ADOP

การใช้คีย์โฆษณาทดสอบที่ ADOP ออกให้เป็นสิ่งจำเป็น

#if defined(ANDROID)
const char* rewardVideoId =      "7d9a2c9e-5755-4022-85f1-6d4fc79e4418";
const char* InterstitialAdId =   "e9acd7fc-a962-40e4-aaad-9feab1b4f821";
const char* AdaptiveBannerAdId = "944fe870-fa3a-4d1b-9cc2-38e50b2aed43";
#else// UNITY_IOS
const char* rewardVideoId =      "29e1ef67-98d2-47b3-9fa2-9192327dd75d";
const char* InterstitialAdId =   "228b95a9-6f42-46d8-a40d-60f17f751eb1";
const char* AdaptiveBannerAdId = "1c3e3085-333f-45af-8427-2810c26a72fc";
#endif

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

หากแอปของคุณมุ่งเป้าไปที่ผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA) และสหราชอาณาจักร คุณต้องขอความยินยอมตาม GDPR ไปที่ UserMessagingPlatform Library ของ Google AdMob และทำตามคำแนะนำเพื่อขอความยินยอม

// When distributing common use
HIVEAdKit::GDPR::Setup(false, nullptr);
// When using GDPR test
HIVEAdKit::GDPR::Reset();
HIVEAdKit::GDPR::Setup(true, testDeviceId);

โฆษณาแบบให้รางวัล

โฆษณาที่ให้รางวัลจะให้รางวัลแก่ผู้ใช้ที่ดูวิดีโอเป็นระยะเวลาหนึ่ง และสามารถโหลดโฆษณาได้ทีละหนึ่งรายการ

// Create RewardVideoAd Instance
auto rewardVideo = HIVEAdKit::RewardVideo::Initialize(rewardVideoId, this);
// Load RewardVideoAd
HIVEAdKit::RewardVideo::Load(*rewardVideo, "RewardVideo-Load-AdPlacementInfo");
// Show RewardVideoAd
if( HIVEAdKit::RewardVideo::IsLoaded(*rewardVideo) ) {
   HIVEAdKit::RewardVideo::Show(*rewardVideo, "RewardVideo-Show-AdPlacementInfo");
}

โฆษณาแบบแทรก

โฆษณาแบบแทรกคือโฆษณาที่เต็มหน้าจอซึ่งปกคลุมส่วนติดต่อของเกม。

// Create InterstitialAd Instance                                               
auto interstitial = HIVEAdKit::Interstitial::Initialize(InterstitialAdId, this);
// Load InterstitialAd
HIVEAdKit::Interstitial::Load(*interstitial, "Interstitial-Load-AdPlacementInfo");
// Show InterstitialAd
if( HIVEAdKit::Interstitial::IsLoaded(*interstitial) ) {
   HIVEAdKit::Interstitial::Show(*interstitial, "Interstitial-Show-AdPlacementInfo");
}

โฆษณาแบนเนอร์แบบปรับได้

โฆษณาแบนเนอร์แบบปรับได้เป็นประเภทของแบนเนอร์เลื่อนที่ครอบครองตำแหน่งบนหน้าจอ ตำแหน่งของแบนเนอร์สามารถปรับได้ด้วยค่า yPos .

// Create AdaptiveBanner Instance
auto adaptiveBanner = HIVEAdKit::AdaptiveBanner::Initialize(AdaptiveBannerAdId, this, yPos);
// Load AdaptiveBanner
HIVEAdKit::AdaptiveBanner::Load(*adaptiveBanner, "Banner-Load-AdPlacementInfo");
// Show AdaptiveBanner
HIVEAdKit::AdaptiveBanner::Show(*adaptiveBanner, "Banner-Show-AdPlacementInfo");
// Hide AdaptiveBanner
HIVEAdKit::AdaptiveBanner::Hide(*adaptiveBanner);

โฆษณาทดสอบ

สิ่งสำคัญสำหรับผู้โฆษณาคือไม่ถูกเรียกเก็บเงินเมื่อคลิกโฆษณาทดสอบในระหว่างการพัฒนา หากคุณคลิกโฆษณามากเกินไปนอกโหมดทดสอบ จะถือว่าเป็นการกระทำที่ไม่ถูกต้อง ดังนั้นโปรดระวังอย่าให้เป็นบัญชีเป้าหมายที่ถูกแจ้งรายงาน

อ้างอิงจาก Google Developers เพื่อใช้โฆษณาทดสอบ