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 ขึ้นไป
-
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 -
เพิ่มโค้ดต่อไปนี้ลงในไฟล์ build.gradle
-
เพิ่ม AdMobId ซึ่งมีรูปแบบเป็น ca-app-pub-XXXXX~YYYYY ลงในไฟล์ AndroidManifest.xml
iOS¶
สร้าง AdKit SourceCode ที่ฝังอยู่ใน SDK เพื่อใช้ AdKit.
-
ลากและวางโฟลเดอร์ HIVEAdKit/src และ HIVEAdKit/include ไปยังโปรเจกต์ XCode. * รวมไฟล์ทั้งหมดที่มีนามสกุล .cpp, .hpp และ .mm. * AdKit ให้โค้ดแบบสะพานสำหรับการใช้งานจริง.
-
เพิ่ม HIVEAdKit/include/bidmad ไปที่ Project > BuildSetting > Search Paths.
-
เพิ่ม
GADApplicationIdentifierไปที่ Info.plist ของโปรเจกต์ Xcode ที่สร้างจาก Unity build และป้อน AdMobId ซึ่งมีรูปแบบเป็น ca-app-pub-XXXXX~YYYYY ในประเภทสตริงบน iOS 14 และสูงกว่า, เพิ่ม SKAdNetworkItems ลงใน Info.plist.
-
เพิ่มสิ่งต่อไปนี้ในการตั้งค่า CocoaPods
-
รันคำสั่งต่อไปนี้เพื่อใช้การตั้งค่า CocoaPod
วิธีการใช้งาน¶
คีย์โฆษณาทดสอบใน 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 เพื่อใช้โฆษณาทดสอบ