跳转至

查看/退出弹出窗口

促销提供游戏评论弹窗和游戏退出弹窗。

评审弹窗

评论弹窗鼓励用户在商店(如 Google Play 商店和 Apple App Store)留下评分和评论。从 Hive SDK v1.16.2 和 v4.11.0 开始,Hive SDK 允许您通过游戏自定义评论弹窗中的短语。您还可以自定义评论弹窗的文本和弹窗 UI,并且不要忘记将商店 URL 与评论弹窗链接。

审核弹窗的条件

Hive SDK 建议的游戏审核弹窗条件如下:

  • 在游戏首次播放后的五分钟内显示评论弹窗。
  • 当用户在游戏中取得显著成绩,例如通关和奖励时,显示评论弹窗。
  • 建议多次弹出,但不应打扰用户玩游戏。
Note

谷歌和苹果被禁止通过提供奖励来吸引用户的评分和评论,谷歌特别禁止提及奖励。

评论弹出窗口的功能如下:

  • 如果用户点击关闭(按钮X),则评论弹出窗口不会在同一设备上重新显示。
  • 如果用户点击稍后按钮,则评论弹出窗口可以在同一设备上重新显示。
  • 如果应用版本升级,评论弹出窗口将再次显示给已经拒绝评估或评论游戏的用户。
  • 根据政策,游戏工作室应实施评论弹出窗口的显示条件和次数。

显示评论弹窗

  • 评审弹窗的示例

要显示评论弹窗,请调用Promotion类的showReview()方法。根据Hive控制台中Promotion > App Settings的设置,显示基本样式或自定义样式的应用内评论弹窗。(请参阅Hive开发者的操作 > 推广 > 应用设置指南。)

API 参考: Promotion .showReview

using hive;    
    Promotion.showReview((ResultAPI result, PromotionEventType viewEventType) => {    
    if (result.isSuccess()) {    
    // call successful    
    }    
});
#include "HivePromotion.h"

FHivePromotion::ShowReview(FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
        if (Result.IsSuccess()) {
                // API 调用成功
        }
}));

API 参考: Promotion ::showReview

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    Promotion::showReview([=](ResultAPI const & result, PromotionEventType viewEventType) {    
         if (result.isSuccess()) {    
             // call successful    
         }    
});

API 参考: Promotion.showReview

import com.hive.Promotion    
    import com.hive.ResultAPI    
    Promotion.showReview(object : Promotion.PromotionViewListener {    
         override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {    
             if (result.isSuccess) {    
                 // call successful    
             }    
         }    
})

API 参考: Promotion .INSTANCE.showReview

import com.hive.Promotion;    
    import com.hive.ResultAPI;    
    Promotion.INSTANCE.showReview((result, promotionEventType) -> {    
         if (result.isSuccess()) {    
             // call successful    
         }    
});

API 参考: PromotionInterface .showReview

import HIVEService    
    PromotionInterface.showReview() { result, viewResultType in    
    if result.isSuccess() {    
    // call successful    
    }    
}

API 参考: HIVEPromotion showReview

#import <HIVEService/HIVEService-Swift.h>    
    [HIVEPromotion showReview: ^(ResultAPI *result, HIVEPromotionViewResultType viewResultType) {    
         if ([result isSuccess]) {    
             // API call successful    
         }    
}];

安卓游戏内评审弹窗的条件

从 Hive SDK 的 v.4.15.1 版本开始,在 Android 环境中使用游戏的用户可以在游戏运行时提供留下评论的能力。与现有的评论弹出窗口不同,您可以在不前往市场的情况下评估您的满意度,如果您回应评论请求,您将立即被带到写作页面。Android 星级评论弹出窗口根据 Google 提供的政策显示,如下所示。

Warning

实现Promotion类的showNativeReview()方法目前仅在Google Play商店可用。Hive SDK,它将Review弹出窗口实现到Android市场和OneStore,将在稍后发布。

  • 是否显示评论弹出窗口是根据Google的内部政策决定的,无法手动更改曝光与否。
  • 如果appId设置为使用Google市场,则可以在安装了Google Play商店的Android 5.0(API级别21)或更高版本的设备上曝光。
  • 为了增强用户隐私并防止API滥用,建议根据Google指南的内容调用API。
  • 即使在开发中的构建中,曝光也是根据Google的内部政策决定的,若要始终设置曝光,请参考相应的Google指南

在安卓上显示游戏内评测弹窗

  • 安卓游戏内评价弹窗示例

iOS本地审核弹窗的条件

iOS 的原生评论弹窗鼓励用户在 iOS 游戏中评分和撰写评论。此弹窗允许游戏用户点击星星为游戏评分或添加评论,而无需切换到市场页面。与游戏评论弹窗不同,游戏内评论弹窗在用户点击 撰写评论 按钮后会显示一个写作页面。Hive SDK 建议 iOS 原生评论弹窗的条件如下:

  • 可同时使用由 Hive 提供的游戏评论弹窗和 iOS 的原生评论弹窗。
  • 如果游戏评论弹窗为每个游戏定制,则无法同时使用 iOS 的原生评论弹窗。

游戏内评审弹窗是根据苹果政策公开的。确保使用Hive SDK v1.16.0及更高版本,或v4.10.0及更高版本运行。

  • 无法自定义显示顺序、文本或用户界面。
  • 每个游戏每个设备每三个月显示一次弹出窗口。弹出窗口的显示遵循苹果的内部政策,因此无法自定义。
  • 运行在 iOS 10.3 及更高版本上。
  • 当用户将设备上的应用程序设置为禁用状态时,无法显示弹出窗口。
  • 开发中的构建无法显示弹出窗口,并且无法向市场提交评分。
  • 在使用 TestFlight 分发的应用程序上不可用。

如果在不支持游戏内评论的 Android 或 iOS 版本上调用此 API,则评论弹出窗口会照常显示。显示的条件与游戏评论弹出窗口相同。

为iOS显示本地评论弹窗

  • iOS本地评论弹窗示例

要显示本地评论弹出窗口,请调用Promotion类的showNativeReview()方法。

API参考:Promotion .showNativeReview

using hive;    

Promotion.showNativeReview();

API 参考: Promotion ::showNativeReview

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    

Promotion::showNativeReview(NULL);
#include "HivePromotion.h"

FHivePromotion::ShowReview(FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
        // 本地评论回调不再支持
}));

API 参考: Promotion.showNativeReview

import com.hive.Promotion    
    import com.hive.ResultAPI    

Promotion.showNativeReview()

API 参考: Promotion .INSTANCE.showNativeReview

import com.hive.Promotion;    
    import com.hive.ResultAPI;    

Promotion.INSTANCE.showNativeReview()

API 参考: PromotionInterface.showNativeReview

import HIVEService    

PromotionInterface.showNativeReview()

API 参考: HIVEPromotion showNativeReivew

#import <HIVEService/HIVEService-Swift.h>    

[HIVEPromotion showNativeReivew];

退出弹窗

此弹出窗口检查用户是否想退出游戏以及是否希望获得游戏推荐。

Note

由于政策问题,退出弹出窗口仅在Android上提供。

Note

如果您在实现退出弹出窗口时将游戏页面链接到 m.withhive.com 的“更多游戏”按钮,则无法使用自定义视图,而是通过用户设备上的互联网浏览器使用 URL。

退出弹窗的条件

根据构建 Android 应用的指南,当用户在玩游戏时点击 返回 按钮时,您的游戏应该返回到上一页。因此,如果用户点击 返回 按钮,则返回到上一页,直到没有更多页面可以返回,然后显示退出弹窗以退出或继续游戏;通常是在用户处于游戏大厅时。

显示退出弹窗

  • 关闭弹出窗口的示例,包含 Hive 游戏推荐

要显示退出弹窗,请调用Promotion类的showExit()方法。当用户在退出弹窗出现后点击退出按钮时,promotionEventType被赋值为PromotionEventType.EXIT。 以下是显示退出弹窗的示例代码。

API 参考: hive.Promotion.showExit

using hive;    

    hive.Promotion.showExit(ResultAPI result, PromotionEventType viewEventType) => {    
         if (!result.isSuccess()) {    
             return;    
         }    

         // 调用成功    
         if (viewEventType == PromotionEventType.EXIT) {    
             //TODO:    
             // 实现应用程序终止功能    
             Application.Quit();    
         }    
});
#include "HivePromotion.h"

FHivePromotion::ShowExit(FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
        if (!Result.IsSuccess()) {
                return;
        }

        if (PromotionEventType == EHivePromotionEventType::EXIT) {
                // TODO: 实现应用程序终止功能
                // 例如) UKismetSystemLibrary::QuitGame(GetWorld(), nullptr, EQuitPreference::Quit, false);
        }
}));

API 参考: Promotion::showExit

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    

    Promotion::showExit([=](ResultAPI result, PromotionEventType viewEventType) {    
         if (!result.isSuccess()) {    
             return;    
         }    

         // 调用成功    
         if (viewEventType == PromotionEventType::EXIT) {    
             //TODO:    
             // 实现应用程序终止功能    
             // Cocos2d-x 引擎用户    
             exit(0);    
             // 虚幻引擎用户    
             UKismetSystemLibrary::QuitGame(GetWorld(), nullptr, EQuitPreference::Quit, false);    
         }    
});

API 参考: com.hive.Promotion.showExit

import com.hive.Promotion    
    import com.hive.ResultAPI    

    Promotion.showExit(object: Promotion.PromotionViewListener {    
         override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {    
             if (!result.isSuccess) {    
                 return    
             }    

             // 调用成功    
             if (promotionEventType == Promotion.PromotionViewResultType.NEED_TO_EXIT) {    
                 //TODO:    
                 // 实现应用程序终止功能    
                 exitProcess(0)    
             }    
         }    
})

API 参考: Promotion.INSTANCE.showExit

import com.hive.Promotion;    
    import com.hive.ResultAPI;    

    Promotion.INSTANCE.showExit((result, promotionEventType) -> {    
         if (!result.isSuccess()) {    
             return;    
         }    

         // 调用成功    
         if (promotionEventType == Promotion.PromotionViewResultType.NEED_TO_EXIT) {    
             //TODO:    
             // 实现应用终止功能    
             System.exit(0);    
         }    
});