แสดงแบนเนอร์ระหว่างหน้า
Hive SDK ให้บริการแบนเนอร์แบบเต็มหน้าจอเพื่อ
- เปิดเผยเหตุการณ์อย่างมีประสิทธิภาพต่อผู้เล่นเกม
- กระตุ้นผู้ใช้ให้มีส่วนร่วมในเกมมากขึ้น
- ใช้เป็นการโปรโมตข้ามเพื่อโฆษณาเกมอื่น ๆ และมอบรางวัล
แบนเนอร์ที่กำหนดโดย Hive หมายถึงการแสดงโปรโมชั่นที่ประกอบด้วยภาพเดียวโดยไม่มีตัวอักษร หากผู้ใช้คลิกที่แบนเนอร์ จะนำผู้ใช้ไปยังหน้ารายละเอียด หน้าภายนอก หรือหน้าดาวน์โหลดของเกมที่กำลังโฆษณาตามเนื้อหาที่กำหนดใน Hive Console เราขอแนะนำให้คุณแสดงแบนเนอร์แบบเต็มหน้าจอ ซึ่งจะแสดงภาพแบนเนอร์แบบเต็มหน้าจอ เมื่อผู้ใช้เข้าสู่ล็อบบี้เกมหลังจากเข้าสู่ระบบ
การลงทะเบียนแบนเนอร์ระหว่างกลางบน Hive คอนโซล¶
ออกแบบภาพแบนเนอร์ตามโหมดแนวนอนและแนวตั้งดังต่อไปนี้ และลงทะเบียนใน Hive Console สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการลงทะเบียนแบนเนอร์ โปรดดูที่ คู่มือสำหรับ Hive Console Promotion.
- ขนาดภาพแบนเนอร์โปรโมชั่น - โหมดแนวนอน: 1080x720 px
- โหมดแนวตั้ง: 720x1080 px
 
- หากคุณต้องการแสดงแบนเนอร์ความละเอียดสูงในสภาพแวดล้อม PC กรุณาอัปโหลดภาพขนาด 2160x1440 px.
การแสดงแบนเนอร์ระหว่าง¶
- ตัวอย่างของแบนเนอร์ระหว่างหน้า
ในการแสดงแบนเนอร์ระหว่างหน้า ให้เรียกใช้วิธีการ showPromotion() จากคลาส Promotion โดยใช้พารามิเตอร์ PromotionType.BANNER ตั้งแต่ Hive SDK v4.12.1, PromotionType.BANNER จะแสดงแบนเนอร์ประเภทเว็บ และพารามิเตอร์อื่นๆ จะแสดงแบนเนอร์ประเภทภาพ เมื่อคุณเรียกใช้ PromotionType.BANNERLEGACY แบนเนอร์ประเภทเว็บวิวจะแสดงตามปกติ
เมื่อแสดงแบนเนอร์เต็มรูปแบบด้วยประเภท PromotionType.BANNER รูปภาพที่เก็บไว้แบบอะซิงโครนัสในพื้นที่จัดเก็บข้อมูลท้องถิ่นของแอปในระหว่างกระบวนการเริ่มต้น SDK ของ Hive จะถูกแสดง หากไม่มีรูปภาพที่เก็บไว้ในแคช รูปภาพจะถูกดาวน์โหลดทันทีเพื่อแสดง
เริ่มต้นจาก Hive SDK v4 24.2.0 ฟีเจอร์ "ไม่แสดงวันนี้" ที่ด้านล่างของแบนเนอร์แบบแทรกจะถูกเปลี่ยนเป็น "ไม่แสดงเป็นเวลา n วัน" เมื่อทำการลงทะเบียนแบนเนอร์แบบแทรกใน Hive Console คุณสามารถตั้งค่าช่วงเวลาไม่ให้แสดงระหว่าง 1 ถึง 7 วัน เกณฑ์สำหรับการไม่แสดงคือเที่ยงคืนในเวลาท้องถิ่นของแต่ละภูมิภาคเมื่อวันที่เปลี่ยนไป สำหรับรายละเอียดเพิ่มเติม โปรดดูที่คู่มือการส่งเสริมการขายของ Hive Console
ต่อไปนี้คือตัวอย่างโค้ดเพื่อแสดงแบนเนอร์ระหว่างหน้า
API Reference: hive.Promotion.showPromotion
using hive;    
    PromotionType promotionViewType = PromotionType.BANNER;    
    // ถ้าเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้แสดงอีกวันนี้ มันจะถูกละเลยและแบนเนอร์ระหว่างหน้าจะถูกแสดง    
    Boolean isForced = false;    
    // แสดงแบนเนอร์ระหว่าง    
    Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {    
         if (result.isSuccess()) {    
             // เรียกใช้เมื่อสำเร็จ    
         }    
});
#include "HivePromotion.h"
EHivePromotionType PromotionType = EHivePromotionType::BANNER;
 // ถ้าเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้แสดงอีกวันนี้ มันจะถูกมองข้ามและแบนเนอร์ระหว่างหน้าจะถูกแสดง
bool bIsForced = false;
FHivePromotion::ShowPromotion(PromotionType, bIsForced, FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
        if (Result.IsSuccess()) {
                // API call success
        }
}));
API Reference: Promotion::showPromotion
#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    PromotionType promotionViewType = PromotionType::BANNER;    
    // ถ้าเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าไว้แล้วว่าไม่ให้แสดงอีกวันนี้ มันจะถูกละเลยและแบนเนอร์ระหว่างหน้าจะถูกแสดง    
    bool isForced = false;    
    Promotion::showPromotion(promotionViewType, isForced, [=](ResultAPI result, PromotionEventType viewEventType) {    
        if (result.isSuccess()) {    
            // call successful    
         }    
});
API Reference: Promotion.showPromotion
import com.hive.Promotion    
    import com.hive.ResultAPI    
    val promotionViewType = Promotion.PromotionViewType.BANNER    
    // ถ้าเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าไม่ให้แสดงอีกวันนี้แล้วก็ตาม จะถูกละเลยและแบนเนอร์แบบอินเตอร์สติชเชียลจะแสดง    
    val isForced = false    
    Promotion.showPromotion(promotionViewType, isForced, object : Promotion.PromotionViewListener {    
         override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {    
             if (result.isSuccess) {    
                 // เรียกใช้งานสำเร็จ    
             }    
         }    
})
API Reference: com.hive.Promotion.showPromotion
import com.hive.Promotion;    
    import com.hive.ResultAPI;    
    Promotion.PromotionViewType promotionViewType = Promotion.PromotionViewType.BANNER;    
    // ถ้าเป็นจริง ปุ่ม 'ไม่ต้องดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้แสดงอีกวันนี้ มันจะถูกละเลยและแบนเนอร์แบบอินเตอร์สติชเชียลจะถูกแสดง    
    boolean isForced = false;    
    Promotion.INSTANCE.showPromotion(promotionViewType, isForced, (result, promotionEventType) -> {    
         if (result.isSuccess()) {    
             // เรียกใช้สำเร็จ    
         }    
});
API Reference: PromotionInterface.showPromotion
import HIVEService    
    let promotion: PromotionViewType = .banner    
    // หากเป็นจริง ปุ่ม 'ไม่ดูอีกในวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าไม่ให้แสดงอีกในวันนี้แล้วก็ตาม จะถูกละเลยและแบนเนอร์แบบเต็มหน้าจอจะแสดงขึ้น    
    let isForced = false    
    PromotionInterface.showPromotion(promotionViewType, isForced: isForced) { result, viewResultType in    
    if result.isSuccess() {    
    // เรียกใช้งานสำเร็จ    
    }    
}
API Reference: HIVEPromotion::showPromotion
#import <HIVEService/HIVEService-Swift.h>    
    HIVEPromotionViewType promotionViewType = HIVEPromotionViewTypeBANNER;    
    // หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าให้ไม่แสดงอีกวันนี้แล้วก็ตาม จะถูกละเลยและแบนเนอร์ระหว่างหน้าจะแสดงขึ้น    
    BOOL isForced = NO;    
    [HIVEPromotion showPromotion: promotionViewType isForced: isForced handler: ^(HIVEResultAPI *result, HIVEPromotionViewResultType viewResultType) {    
         if ([result isSuccess]) {    
              // call successful    
         }    
}];
การควบคุมแบนเนอร์ระหว่างกลางสำหรับการส่งเสริมข้าม¶
เมื่อคุณเรียกใช้วิธีการ showPromotion() แบนเนอร์ระหว่างหน้าที่ลงทะเบียนไว้ก่อนหน้านี้ทั้งหมดจะแสดงขึ้น ตั้งแต่ Hive SDK v4 24.2.0 เป็นต้นไป คุณสามารถเลือกได้ว่าจะให้แสดงแบนเนอร์ข้ามโปรโมชั่นหรือไม่
หากคุณเรียกใช้ Configuration.setCrossPromotionBannerShowing(false) ก่อนที่จะเรียกใช้วิธีการ showPromotion() แบนเนอร์ข้ามโปรโมชั่นจะไม่แสดงเมื่อแอปถูกเปิดใช้งาน หากคุณเรียกใช้ด้วย true แบนเนอร์จะถูกแสดง วิธีการนี้จะส่งผลต่อแอปตราบเท่าที่มันยังคงทำงานอยู่ ดังนั้นจึงจำเป็นต้องเรียกใช้เพียงครั้งเดียวหลังจากที่ Hive SDK ถูกเริ่มต้นและก่อนที่จะเรียกใช้วิธีการ showPromotion() คุณสามารถเปลี่ยนความสามารถในการมองเห็นของแบนเนอร์โดยการเรียกใช้วิธีการนี้อีกครั้งด้วยค่าที่แตกต่างกัน (true หรือ false) ขณะที่แอปยังทำงานอยู่
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;
// ตั้งค่าแบนเนอร์ข้ามการโปรโมตแบบเต็มหน้าจอไม่ให้แสดง (false)
Configuration::setCrossPromotionBannerShowing(false);
// คืนสถานะของการแสดงแบนเนอร์ข้ามโปรโมชั่น
bool crossPromotionBannerShowing = Configuration::getCrossPromotionBannerShowing();
#import <HIVEService/HIVEService-Swift.h>
// ตั้งค่าป้ายโฆษณาข้ามการโปรโมตไม่ให้แสดง (false)
[HIVEConfiguration setCrossPromotionBannerShowing:false];
// ส่งคืนสถานะของการแสดงแบนเนอร์ข้ามโปรโมชั่น
BOOL crossPromotionBannerShowing = [HIVEConfiguration getCrossPromotionBannerShowing];
#import <HIVEService/HIVEService-Swift.h>
// ตั้งค่าแบนเนอร์ข้ามการโปรโมตให้ไม่แสดง (false)
[HIVEConfiguration setCrossPromotionBannerShowing:false];
// คืนสถานะการแสดงแบนเนอร์ข้ามโปรโมชัน
BOOL crossPromotionBannerShowing = [HIVEConfiguration getCrossPromotionBannerShowing];
