发送远程推送
Hive SDK 提供了發送遠程推送的功能,以及搜索和更改推送設置的功能。遊戲開發者應該做的是為用戶創建設置 UI,以便用戶選擇是否參加推送服務。
發送遠程推送¶
遠程推送有兩種發送方式;通過 Hive 控制台,和通過從遊戲伺服器調用 API 到 Hive 伺服器。因此,您不需要在遊戲客戶端上執行任何操作來發送或接收遠程推送。
欲了解更多詳情,請點擊以下鏈接。
搜尋推播設定¶
Hive SDK 定義了 RemotePush
類別,包含有關用戶的遠端推播配置狀態的以下內容。
名稱 | 類型 | 描述 |
---|---|---|
isAgreeNotice | 布林值 | 它描述用戶設置的公告通知的啟用狀態 true : 用戶選擇接收公告通知 false : 用戶選擇不接收公告通知 沒有安裝歷史存在: true 如果伺服器沒有返回值: true |
isAgreeNight | 布林值 | 它描述用戶設置的夜間通知的啟用狀態 true : 用戶選擇接收夜間通知 false : 用戶選擇不接收夜間通知 沒有安裝歷史存在: 韓國; false , 除韓國以外的國家; true 如果伺服器沒有返回值: false |
要查詢存儲在 Hive 伺服器上的用戶的遠程推送狀態,請調用 Push 類的 getRemotePush()
方法,並檢查作為查詢結果返回的 RemotePush
對象。 以下是查詢遠程推送設置的示例代碼。
API 參考: hive.Push.getRemotePush
API 參考: Push::getRemotePush
API 參考: Push.getRemotePush
API 參考: com.hive.Push.getRemotePush
API 參考: PushInterface .getRemotePush
API 參考: HIVEPush:getRemotePush
更改推送設定¶
如果用户更改公告通知或夜间通知的状态,您应该将更新的数据发送到Hive 服务器。要将更新的数据发送到Hive 服务器,请将数据设置为remotePush
参数(RemotePush
对象),以调用Push类的setRemotePush()
方法,然后使用回调函数检查结果。 以下是更改广告推送设置的示例代码。
API 參考: hive.Push.setRemotePush
#include "HivePush.h"
bool bNotice = true;
bool bNight = false;
FHiveRemotePush RemotePush(bNotice, bNight);
FHivePush::SetRemotePush(RemotePush, FHivePushOnRemotePushDelegate::CreateLambda([this](const FHiveResultAPI& Result, const FHiveRemotePush& RemotePush) {
if (Result.IsSuccess()) {
// API 调用成功
}
}));
API 參考: Push::setRemotePush
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;
HIVERemotePush remotePush;
remotePush.isAgreeNotice = true;
remotePush.isAgreeNight = false;
Push::setRemotePush(remotePush, [=](resultAPI result, HIVERemotePush remotePush) {
if (result.isSuccess()) {
// call successful
}
});
API 參考: Push.setRemotePush
import com.hive.Push
import com.hive.ResultAPI
val remotePush = Push.RemotePush()
remotePush.isAgreeNotice = true
remotePush.isAgreeNight = false
Push.setRemotePush(remotePush, object : Push.RemotePushListener {
override fun onPushToken(result: ResultAPI, remotePush: Push.RemotePush?) {
if (result.isSuccess) {
// call successful
}
}
})
API 參考: com.hive.Push.setRemotePush
API 參考: PushInterface.setRemotePush
API 參考: HIVEPush:setRemotePush
#import <HIVEService/HIVEService-Swift.h>
HIVERemotePush *remotePush = [[HIVERemotePush alloc] init];
remotePush.isAgreeNotice = YES;
remotePush.isAgreeNight = NO;
[HIVEPush setRemotePush: remotePush handler: ^(HIVEResultAPI *result, HIVERemotePush *remotePush){
if ([result isSuccess]) {
// call successful
}
}];