Hive는 리모트 푸시를 보낼 수 있는 기능과 유저의 푸시 수신 설정을 조회하고 변경할 수 있는 기능을 제공합니다. 유저가 푸시 수신 여부를 설정하는 UI는 게임에서 구현해주세요.
리모트 푸시 전송하기
리모트 푸시는 Hive 콘솔을 통해서 발송하거나 게임 서버에서 API를 통해 Hive 서버로 푸시 발송을 요청하는 방식이 있습니다. 따라서 리모트 푸시를 발송하거나 리모트 푸시를 수신하기 위해서 게임 클라이언트에서 별도로 작업할 부분은 없습니다.
리모트 푸시 전송은 하단 링크로 이동하여 자세한 사항을 확인하세요.
푸시 수신 설정 조회
Hive는 유저의 리모트 푸시 설정 상태에 대해 다음의 정보를 담아 RemotePush 클래스로 정의합니다.
Name | Type | Description |
---|---|---|
isAgreeNotice | Boolean | 유저가 공지 알림 수신을 허용했는지를 나타냄.
|
isAgreeNight | Boolean | 유저가 야간 알림 수신을 허용했는지를 나타냄.
|
Hive 서버에 저장된 유저의 리모트 푸시 수신 여부 정보를 조회하려면 Push API의 getRemotePush()
함수를 호출하고 리모트 푸시 설정 조회 결과로 반환되는 RemotePush
오브젝트를 확인하세요.
다음은 유저의 리모트 푸시 설정을 조회하는 예제 코드입니다.
API Reference: hive.Push.getRemotePush
1 2 3 4 5 6 7 |
using hive; Push.getRemotePush((ResultAPI result, RemotePush remotePush) => { if (result.isSuccess()) { // 호출 성공 } }); |
API Reference: Push::getRemotePush
1 2 3 4 5 6 7 8 9 |
#include <HIVE_SDK_Plugin/HIVE_CPP.h> using namespace std; using namespace hive; Push::getRemotePush([=](ResultAPI result, RemotePush remotePush) { if (result.isSuccess()) { // 호출 성공 } }); |
API Reference: Push.getRemotePush
1 2 3 4 5 6 7 8 9 10 |
import com.hive.Push import com.hive.ResultAPI Push.getRemotePush(object : Push.RemotePushListener { override fun onPushToken(result: ResultAPI, remotePush: Push.RemotePush?) { if (result.isSuccess) { // 호출 성공 } } }) |
API Reference: com.hive.Push.getRemotePush
1 2 3 4 5 6 7 8 |
import com.hive.Push; import com.hive.ResultAPI; Push.INSTANCE.getRemotePush((result, remotePush) -> { if (result.isSuccess()) { // 호출 성공 } }); |
API Reference: PushInterface.getRemotePush
1 2 3 4 5 6 7 |
import HIVEService PushInterface.getRemotePush() { result, remotePush in if result.isSuccess() { // 호출 성공 } } |
API Reference: HIVEPush:getRemotePush
1 2 3 4 5 6 7 |
#import <HIVEService/HIVEService-Swift.h> [HIVEPush getRemotePush: ^(HIVEResultAPI *result, HIVERemotePush *remotePush) { if ([result isSuccess]) { // 호출 성공 } }]; |
푸시 수신 설정 변경
유저가 공지 알림이나 (공지) 야간 알림 수신 여부를 변경하면 변경된 수신 정보를 Hive 서버에 전달해야 합니다. 변경된 수신 정보를 Hive 서버에 전달하려면, 변경 정보를 remotePush
파라미터(RemotePush
오브젝트)에 설정하여 Push API의 setRemotePush()
함수를 호출하고 콜백 함수를 통해 결과를 확인하세요.
다음은 유저의 마케팅 광고 푸시 설정을 변경하는 예제 코드입니다.
API Reference: hive.Push.setRemotePush
1 2 3 4 5 6 7 8 9 10 11 |
using hive; RemotePush remotePush = new RemotePush(); remotePush.isAgreeNotice = true; remotePush.isAgreeNight = false; Push.setRemotePush(remotePush, (ResultAPI result, RemotePush remotePush) => { if (result.isSuccess()) { // 호출 성공 } }); |
API Reference: Push::setRemotePush
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#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()) { // 호출 성공 } }); |
API Reference: Push.setRemotePush
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
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) { // 호출 성공 } } }) |
API Reference: com.hive.Push.setRemotePush
1 2 3 4 5 6 7 8 9 10 11 12 |
import com.hive.Push; import com.hive.ResultAPI; Push.RemotePush remotePush = new Push.RemotePush(); remotePush.setAgreeNotice(true); remotePush.setAgreeNight(false); Push.INSTANCE.setRemotePush(remotePush, (result, remotePush1) -> { if (result.isSuccess()) { // 호출 성공 } }); |
API Reference: PushInterface.setRemotePush
1 2 3 4 5 6 7 8 9 10 11 |
import HIVEService let remotePush = RemotePush() remotePush.isAgreeNotice = true remotePush.isAgreeNight = false PushInterface.setRemotePush(remotePush) { result, remotePush in if result.isSuccess() { // 호출 성공 } } |
API Reference: HIVEPush:setRemotePush
1 2 3 4 5 6 7 8 9 10 11 |
#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]) { // 호출 성공 } }]; |