แสดงหน้าข่าว
ในหน้าข่าว คุณสามารถดูแบนเนอร์กิจกรรมและประกาศของเกมที่ลงทะเบียนใน Hive คอนโซลได้พร้อมกันในหน้าเดียว
Note
คูปองแลกเปลี่ยนจะแสดงบนหน้าข่าวในอุปกรณ์ Android เท่านั้น.
การตั้งค่าหน้าข่าว¶
ลงทะเบียนเนื้อหาของป้ายประกาศและป้ายกิจกรรม ซึ่งประกอบขึ้นเป็นหน้าข่าว บน Hive Console คุณสามารถกำหนดลำดับของส่วนประกอบได้ เช่น ว่าจะวางป้ายประกาศที่ด้านบนหรือป้ายกิจกรรมที่ด้านบน และว่าจะแสดงป้ายที่แจ้งเตือนการสิ้นสุดของกิจกรรมที่ใกล้เข้ามาและป้ายที่แจ้งเตือนระยะเวลาที่สามารถรับของขวัญจาก Hive Console ได้หรือไม่ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการลงทะเบียน โปรดดูที่ Hive Console Promotion.
การแสดงหน้าข่าว¶
เพื่อแสดงหน้าข่าว ให้ตั้งค่า promotionType เป็น PromotionType.NEWS และเรียกใช้วิธี showPromotion() ในคลาส Promotion
ต่อไปนี้คือตัวอย่างโค้ดในการแสดงหน้าข่าว
API Reference: hive.Promotion.showPromotion
using hive;
PromotionType promotionViewType = PromotionType.NEWS;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้ดูอีกวันนี้ มันจะถูกมองข้ามและหน้าข่าวจะถูกแสดง
Boolean isForced = false;
Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {
if (result.isSuccess()) {
// เรียกใช้งานสำเร็จ
}
});
#include "HivePromotion.h"
EHivePromotionType PromotionType = EHivePromotionType::NEWS;
// ถ้าเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้แสดงอีกวันนี้ มันจะถูกละเลยและแสดงหน้าข่าว
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::NEWS;
// ถ้าเป็นจริง ปุ่ม 'ไม่ต้องดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้ดูอีกวันนี้ มันจะถูกละเลยและหน้าข่าวจะถูกแสดง
bool isForced = false;
Promotion::showPromotion(promotionViewType, isForced, [=](ResultAPI result, PromotionEventType viewEventType) {
if (result.isSuccess()) {
// call successful
}
});
เอกสารอ้างอิง API: Promotion.showPromotion
import com.hive.Promotion
import com.hive.ResultAPI
val promotionViewType = Promotion.PromotionViewType.NEWS
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าไม่ให้ดูอีกวันนี้แล้วก็ตาม ก็จะถูกละเลยและแสดงหน้าข่าว
val isForced = false
Promotion.showPromotion(promotionViewType, isForced, object : Promotion.PromotionViewListener {
override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {
if (result.isSuccess) {
// เรียกใช้งานสำเร็จ
}
}
})
เอกสารอ้างอิง API: com.hive.Promotion.showPromotion
import com.hive.Promotion;
import com.hive.ResultAPI;
Promotion.PromotionViewType promotionViewType = Promotion.PromotionViewType.NEWS;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าไม่ให้ดูอีกวันนี้แล้วก็ตาม จะถูกละเลยและแสดงหน้าข่าว
boolean isForced = false;
Promotion.INSTANCE.showPromotion(promotionViewType, isForced, (result, promotionEventType) -> {
if (result.isSuccess()) {
// เรียกใช้สำเร็จ
}
});
API Reference: PromotionInterface.showPromotion
import HIVEService
let promotionViewType: PromotionViewType = .news
// If true, the 'Do not watch again today' button will not be displayed. Even if the user has already set it not to be viewed again today, it is ignored and the news page is displayed.
let isForced = false
PromotionInterface.showPromotion(promotionViewType, isForced: isForced) { result, viewResultType in
if result.isSuccess() {
// call successful
}
}
API Reference: HIVEPromotion::showPromotion
#import <HIVEService/HIVEService-Swift.h>
HIVEPromotionViewType promotionViewType = HIVEPromotionViewTypeNews;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้ดูอีกวันนี้ มันจะถูกละเลยและหน้าข่าวจะถูกแสดง
BOOL isForced = NO;
[HIVEPromotion showPromotion: promotionViewType isForced: isForced handler: ^(HIVEResultAPI *result, HIVEPromotionViewResultType viewResultType) {
if ([result isSuccess]) {
// call successful
}
}];
- "ไม่แสดงหน้าข่าวอีก" ตัวเลือก
คุณสามารถให้ผู้ใช้เลือกไม่ให้ดูหน้าข่าวเป็นเวลาหนึ่งวัน เพื่อเปิดใช้งานช่องทำเครื่องหมายไม่ให้แสดงหน้าดังกล่าว ให้ตั้งค่าพารามิเตอร์isForcedเป็นfalseเมื่อเรียกใช้วิธีshowPromotion()ในคลาส Promotion - การแสดงหน้าข่าวโดยบังคับ
หากคุณไม่ให้ผู้ใช้มีตัวเลือก "ไม่แสดงหน้านี้อีก" หรือแม้ว่าผู้ใช้จะเลือกไม่ให้ดูมันเป็นเวลาหนึ่งวันแล้ว แต่ถ้าคุณต้องการละเลยความชอบของผู้ใช้และแสดงหน้าข่าวให้กับผู้ใช้ คุณสามารถตั้งค่าพารามิเตอร์isForcedเป็นtrueเมื่อเรียกใช้วิธีshowPromotion()ในคลาส Promotion
หากคุณตั้งค่าพารามิเตอร์isForcedเป็นtrueหน้าข่าวจะไม่แสดงช่องทำเครื่องหมายให้ติ๊ก "ไม่แสดงหน้านี้อีก" แม้ว่าผู้ใช้จะติ๊ก "ไม่แสดงหน้านี้อีก" แล้ว หน้าข่าวก็จะแสดงขึ้นอย่างบังคับ
แสดงหน้าข Nachricht โดยเปิดการแจ้งเตือน¶
เพื่อแสดงหน้าข่าวด้วยการแจ้งเตือนเท่านั้น ให้ตั้งค่า promotionType เป็น PromotionType.NOTICE และเรียกใช้วิธี showPromotion() ในคลาส Promotion
ต่อไปนี้คือตัวอย่างโค้ดเพื่อแสดงรายการการแจ้งเตือน
API Reference: hive.Promotion.showPromotion
using hive;
PromotionType promotionViewType = PromotionType.NOTICE;
// ถ้าเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าให้ไม่ดูอีกวันนี้แล้วก็ตาม จะถูกละเลยและหน้าแจ้งเตือนจะแสดง
Boolean isForced = false;
Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {
if (result.isSuccess()) {
// เรียกใช้สำเร็จ
}
});
#include "HivePromotion.h"
EHivePromotionType PromotionType = EHivePromotionType::Notice;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่ถูกแสดง แม้ว่าผู้ใช้จะตั้งค่าให้ไม่แสดงอีกวันนี้แล้วก็ตาม มันจะถูกละเลยและหน้าแจ้งเตือนจะถูกแสดง
bool bIsForced = false;
FHivePromotion::ShowPromotion(PromotionType, bIsForced, FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
if (Result.IsSuccess()) {
// API call success
}
}));
เอกสารอ้างอิง API: Promotion ::showPromotion
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;
PromotionType promotionViewType = PromotionType::NOTICE;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าแล้วว่าไม่ให้ดูอีกวันนี้ มันจะถูกละเลยและหน้าการแจ้งเตือนจะถูกแสดง
bool isForced = false;
Promotion::showPromotion(promotionViewType, isForced, [=](ResultAPI result, PromotionEventType viewEventType) {
if (result.isSuccess()) {
// call successful
}
});
เอกสารอ้างอิง API: Promotion.showPromotion
import com.hive.Promotion
import com.hive.ResultAPI
val promotionViewType = Promotion.PromotionViewType.NOTICE
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าให้ไม่ดูอีกวันนี้แล้วก็ตาม จะถูกละเลยและหน้าแจ้งเตือนจะถูกแสดง
val isForced = false
Promotion.showPromotion(promotionViewType, isForced, object : Promotion.PromotionViewListener {
override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {
if (result.isSuccess) {
// เรียกใช้เมื่อสำเร็จ
}
}
})
เอกสารอ้างอิง API: Promotion .INSTANCE.showPromotion
import com.hive.Promotion;
import com.hive.ResultAPI;
Promotion.PromotionViewType promotionViewType = Promotion.PromotionViewType.NOTICE;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าให้ไม่ดูอีกวันนี้แล้วก็ตาม จะถูกละเว้นและหน้าแจ้งเตือนจะถูกแสดง
boolean isForced = false;
Promotion.INSTANCE.showPromotion(promotionViewType, isForced, (result, promotionEventType) -> {
if (result.isSuccess()) {
// เรียกใช้สำเร็จ
}
});
API Reference: PromotionInterface.showPromotion
import HIVEService
let promotionViewType: PromotionViewType = .notice
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่แสดง แม้ว่าผู้ใช้จะตั้งค่าให้ไม่ดูอีกวันนี้แล้วก็ตาม จะถูกละเลยและหน้าแจ้งเตือนจะถูกแสดง
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 = HIVEPromotionViewTypeNotice;
// หากเป็นจริง ปุ่ม 'ไม่ดูอีกวันนี้' จะไม่ถูกแสดง แม้ว่าผู้ใช้จะตั้งค่าไว้แล้วว่าไม่ให้ดูอีกวันนี้ มันจะถูกละเลยและหน้าข้อความจะแสดง
BOOL isForced = NO;
[HIVEPromotion showPromotion: promotionViewType isForced: isForced handler: ^(HIVEResultAPI *result, HIVEPromotionViewResultType viewResultType) {
if ([result isSuccess]) {
// call successful
}
}];
Displaying news page with a particular menu activated¶
ในการแสดงหน้าข่าวพร้อมเมนูเฉพาะ ให้เรียกใช้วิธีการ showNews() ในคลาส Promotion โดยใช้ promotionType เป็นพารามิเตอร์ซึ่งลงทะเบียนใน การตั้งค่าหน้าข่าว.
ต่อไปนี้คือตัวอย่างโค้ดในการแสดงหน้าข่าวพร้อมเมนูเฉพาะที่เปิดใช้งาน
API Reference: hive .Promotion.showNews
การอ้างอิง API: Promotion ::showNews
API Reference: Promotion.showNews
import com.hive.Promotion
import com.hive.ResultAPI
val menu = "ประเภทโปรโมชั่นที่ลงทะเบียนใน Hive คอนโซล"
Promotion.showNews(menu, null, object : Promotion.PromotionViewListener {
override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {
if (result.isSuccess) {
// เรียกใช้งานสำเร็จ
}
}
})
API Reference: Promotion .INSTANCE.showNews
เอกสารอ้างอิง API: PromotionInterface.showNews
API Reference: HIVEPromotion showNews
แสดงหน้าข่าวที่เน้นแบนเนอร์เหตุการณ์ที่ประสบความสำเร็จ¶
ในการแสดงหน้าข่าวที่เน้นเหตุการณ์ที่ประสบความสำเร็จ ให้ใช้หมายเลขแบนเนอร์เหตุการณ์ที่ประสบความสำเร็จ (pid) เป็นพารามิเตอร์เมื่อเรียกใช้เมธอด showNews() ของคลาส Promotion ตัวอย่างโค้ดด้านล่างนี้จะแสดงหน้าข่าวที่เน้นแบนเนอร์เหตุการณ์ที่ประสบความสำเร็จเมื่อผู้เล่นเกมประสบความสำเร็จในเหตุการณ์เฉพาะ
เอกสาร API: hive.Promotion.showNews
// ตั้งค่าพารามิเตอร์เพื่อเปิดใช้งานเมนูเหตุการณ์
String menu = "event";
// ตั้งค่ารายการ Pid สำหรับแบนเนอร์เหตุการณ์ที่สำเร็จเพื่อแยกแยะแบนเนอร์เหตุการณ์ที่สำเร็จ
List<int> giftPidList = [101331, 121881, 253120, 100002]; // ตัวอย่าง Pid
// ตัวจัดการการเรียกกลับของผลลัพธ์ในการเปิดเผยหน้าข่าวโดยเปิดใช้งานเมนูเหตุการณ์
public void onPromotionViewCB(ResultAPI result, PromotionEventType promotionEventType) { if(result.isSuccess()){ // การเรียก API สำเร็จ } }
// เปิดเผยหน้าข่าวพร้อมเปิดใช้งานเมนูเหตุการณ์
hive.Promotion.showNewsmenu, giftPidList, onPromotionViewCB);
API Reference: Promotion::showCustomContents
// ตั้งค่าพารามิเตอร์เพื่อเปิดใช้งานเมนูเหตุการณ์
string menu = "event";
// ตั้งค่ารายการ Pid สำหรับแบนเนอร์เหตุการณ์ที่บรรลุผลเพื่อแยกแยะแบนเนอร์เหตุการณ์ที่บรรลุผล
std::vector<int> giftPidList = {101331, 121881, 253120, 100002}; // ตัวอย่าง Pid
// เปิดเผยหน้าข่าวพร้อมกับเมนูเหตุการณ์ที่เปิดใช้งาน
Promotion::showNewsmenu, giftPidList, [=]ResultAPI result, PromotionEventType promotionEventType){
// ตัวจัดการ callback ของผลลัพธ์ในการเปิดเผยหน้าข่าวพร้อมกับเมนูเหตุการณ์ที่เปิดใช้งาน
if(result.isSuccess()){ // API call succeeded } });
เอกสารอ้างอิง API: com.hive.Promotion.showCustomContents
// ตั้งค่าพารามิเตอร์เพื่อเปิดใช้งานเมนูเหตุการณ์
val menu: String = "event"
// ตั้งค่ารายการ Pid สำหรับแบนเนอร์เหตุการณ์ที่บรรลุผลเพื่อแยกแยะแบนเนอร์เหตุการณ์ที่บรรลุผล
val giftPidList = arrayListOf(101331, 121881, 253120, 100002) // ตัวอย่าง Pid
// เปิดเผยหน้าข่าวพร้อมกับเมนูเหตุการณ์ที่เปิดใช้งาน
Promotion.showNewsmenu, giftPidList, object : Promotion.PromotionViewListener {
override fun onPromotionViewresult: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {
// ตัวฟังผลลัพธ์ของการเปิดเผยหน้าข่าวพร้อมกับเมนูเหตุการณ์ที่เปิดใช้งาน
if (result.isSuccess) {
// การเรียก API สำเร็จ
}
}
}
เอกสารอ้างอิง API: com.hive.Promotion.showCustomContents
// ตั้งค่าพารามิเตอร์เพื่อเปิดใช้งานเมนูเหตุการณ์
String menu = "event";
// ตั้งค่ารายการ pid สำหรับแบนเนอร์เหตุการณ์ที่สำเร็จเพื่อแยกแยะแบนเนอร์เหตุการณ์ที่สำเร็จ
ArrayList<Integer> giftPidList = new ArrayList<Integer>(Arrays.asList1, 2, 3, 4));
// เปิดเผยหน้าข่าวพร้อมเปิดใช้งานเมนูเหตุการณ์
Promotion.showNewsmenu, giftPidList, new PromotionViewListener) { @Override public void onPromotionView@NotNull ResultAPI result, @NotNull PromotionViewResultType promotionEventType) {
// ตัวฟังการตอบกลับของผลลัพธ์ในการเปิดเผยหน้าข่าวพร้อมเปิดใช้งานเมนูเหตุการณ์
if (result.isSuccess) { // การเรียก API สำเร็จ } } });
เอกสารอ้างอิง API: HivePromotion:showCustomContents
// ตั้งค่าพารามิเตอร์เพื่อเปิดใช้งานเมนูเหตุการณ์
String menu = "event"
// ตั้งค่ารายการ Pid สำหรับแบนเนอร์เหตุการณ์ที่สำเร็จเพื่อแยกแยะแบนเนอร์เหตุการณ์ที่สำเร็จ
let giftPidList = [101331, 121881, 253120, 100002] // ตัวอย่าง Pid
// เปิดเผยหน้าข่าวพร้อมเปิดใช้งานเมนูเหตุการณ์
HivePromotion.showNewsmenu: menu, giftPidList: giftPidList) { result, type in
// ตัวฟังการตอบกลับของผลลัพธ์จากการเปิดเผยหน้าข่าวพร้อมเปิดใช้งานเมนูเหตุการณ์
if result.isSuccess {
// การเรียก API สำเร็จ
}
}
API Reference: HivePromotion:showCustomContents
// ตั้งค่าพารามิเตอร์เพื่อเปิดใช้งานเมนูเหตุการณ์
NSString *menu = @"event";
// ตั้งค่ารายการ Pid สำหรับแบนเนอร์เหตุการณ์ที่สำเร็จเพื่อแยกแยะแบนเนอร์เหตุการณ์ที่สำเร็จ
NSArray *giftPidList = @[@101331, @121881, @253120, @100002]; // ตัวอย่าง Pid
// เปิดเผยหน้าข่าวพร้อมเมนูเหตุการณ์ที่เปิดใช้งาน
[HIVEPromotion showNewsWithMenu:menu giftPidList:giftPidList handler:^HIVEResultAPI * result, HIVEPromotionViewResultType type) {
// ตัวฟังการตอบกลับของผลลัพธ์จากการเปิดเผยหน้าข่าวพร้อมเมนูเหตุการณ์ที่เปิดใช้งาน
if (result.isSuccess) {
// การเรียก API สำเร็จ
}
}];
การเพิ่ม API การต่ออายุข้อมูล¶
Warning
สตูดิโอเกมจำเป็นต้องเพิ่ม API นี้.
ข้อมูลหน้าข่าวจะถูกส่งผ่านการสื่อสารกับ Hive เซิร์ฟเวอร์หลังจากที่ผู้ใช้ลงชื่อเข้าใช้ หากผู้ใช้เปลี่ยนการตั้งค่าในเกม เช่น ภาษาเกมและเซิร์ฟเวอร์เกม จำเป็นต้องมีการปรับปรุงข้อมูล ข้อมูลอาจไม่ถูกอัปเดตเป็นข้อมูลล่าสุดหากผู้ใช้เล่นเกมต่อเนื่องเป็นเวลานาน ในกรณีเหล่านี้ สตูดิโอเกมจะต้องปรับปรุงข้อมูลในหน้าข่าวด้วยตนเองเมื่อผู้ใช้เข้าถึงล็อบบี้เกม เรียกใช้วิธี updatePromotionData() ในคลาส Promotion สำหรับการปรับปรุงข้อมูล
ต่อไปนี้เป็นตัวอย่างโค้ดในการปรับปรุงข้อมูลข่าว
API Reference: hive.Promotion.updatePromotionData
API Reference: Promotion::updatePromotionData
เอกสารอ้างอิง API: Promotion.updatePromotionData
API Reference: Promotion.INSTANCE.updatePromotionData
API Reference: PromotionInterface.updatePromotionData
API Reference: HIVEpromotion updatePromotionData
การเพิ่ม API การต่ออายุข้อมูลที่ปรับปรุง¶
Warning
สตูดิโอเกมจำเป็นต้องเพิ่ม API นี้ คุณไม่จำเป็นต้องเพิ่ม API นี้หากคุณกำลังใช้ API นี้อยู่ก่อนที่จะมีการปรับปรุง การปรับปรุงจาก API ที่มีอยู่มีดังนี้
- ลอจิกของการเรียก 'updatePromotionData API' หลังจากเรียก 'setServerID API' ได้รับการปรับปรุงเพื่อให้การทำงานเดียวกันเกิดขึ้นโดยการเรียก updateServerID API เพียงครั้งเดียว
- ลอจิกของการเรียก 'pdatePromotionData API' หลังจากเรียก 'setGameLanguage API' ได้รับการปรับปรุงเพื่อให้ทำงานเหมือนกันโดยการเรียก 'updateGameLanguage API' เพียงครั้งเดียว.
ต่อไปนี้คือตัวอย่างโค้ดเพื่อเพิ่ม API การต่ออายุข้อมูลที่ปรับปรุงแล้ว
API Reference: Configuration.updateServerId
API Reference: Configuration.updateGameLanguage
API Reference: Configuration.updateServerId
API Reference: Configuration.updateGameLanguage
API Reference: Configuration.updateServerId
API Reference: Configuration.updateGameLanguage
API Reference: Configuration.updateServerId
API Reference: Configuration.updateGameLanguage
เอกสารอ้างอิง API: Configuration.updateServerId
เอกสารอ้างอิง API: Configuration.updateGameLanguage
API Reference: ConfigurationInterface.updateServerId
API Reference: ConfigurationInterface.updateGameLanguage API Reference: ConfigurationInterface.updateServerId
API Reference: ConfigurationInterface.updateGameLanguage
API Reference: ConfigurationInterface.updateServerId
API Reference: ConfigurationInterface.updateGameLanguage
