跳轉至

审核/退出弹出窗口

該促銷提供遊戲評論彈出窗口和遊戲退出彈出窗口供遊戲中使用。

評論彈出窗口

評價彈出窗口是一個鼓勵用戶在應用市場(例如,Google Play 商店)為應用程序留下評分和評論的功能。Hive SDK 提供以下兩種類型的評價彈出窗口。

彈出類型 描述
Hive 評論彈出窗口 一個彈出窗口,鼓勵用戶在下載遊戲應用的市場中留下評分和評論。
原生評論彈出窗口 (Android/iOS) 一個彈出窗口,鼓勵用戶在遊戲內立即留下評分和評論,而無需轉到市場。


以下是顯示兩種審核彈出行為過程的流程圖。

Hive 評價彈出窗口

這是一個彈出窗口,指導用戶使用 Hive 界面前往市場,鼓勵他們留下評分和評論。Hive 評論彈出窗口可以使用提供的默認彈出窗口或自定義為不同的界面。

設定類型 描述
預設設定 預設提供的彈出視窗
自訂設定 自訂 UI 彈出視窗
Note

在配置 Hive 評價彈出窗口時,您需要將應用市場的 URL 連結(您可以在應用市場中評分和撰寫評論的位置的連結)插入到彈出窗口中。


在 Hive SDK 中,审核弹出窗口的推荐条件如下。

  • 在用戶安裝後首次啟動遊戲的5分鐘內顯示評價提示
  • 當用戶在遊戲中有積極體驗時顯示(例如,通關、獲得獎勵)
  • 建議多次顯示,但不應造成用戶的不適
Note

谷歌和苹果禁止提供激励措施以鼓励高评分,特别是谷歌禁止提及任何激励措施。


Hive 評論彈出窗口的功能如下。

  • 如果用户点击关闭 (X)按钮,则评论弹出窗口将不会在同一设备上再次显示。
  • 如果用户点击稍后提醒我按钮,则评论弹出窗口可能会在同一设备上再次显示。
  • 如果应用版本更改,则将再次向已经参与或拒绝的用户显示。
  • 显示评论弹出窗口的条件和显示次数必须根据Hive 条件直接在游戏中实现。

Hive 評論彈出顯示

  • Hive 評論彈出窗口截圖

要顯示 Hive 評論彈出窗口,請調用 Promotion 類的 showReview() 方法。根據在控制台中配置的設置,在 Promotion > App Settings 下,將顯示默認樣式或自定義樣式的評論彈出窗口。(請參閱開發者網站上的 Operation > Promotion > App Settings

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 call succeeded
        }
}));

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()) {    
             // 呼叫成功    
         }    
});

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 呼叫成功    
         }    
}];

本地評價彈出窗口

這是一個彈出窗口,允許用戶在應用內立即留下評分和評論,而無需導航到應用市場。

Android 原生評價彈出條件

Hive SDK 提供了一個功能,允許用戶在 Android 環境中玩遊戲時留下評論。與現有的評論彈出窗口不同,滿意度評分可以在不轉到市場的情況下進行,如果您回應評論請求,您將直接進入撰寫頁面。Android 原生評論彈出窗口將根據 Google 提供的政策顯示,如下所示。

Warning

促銷類的 showNativeReview() 方法可以在使用 Google Play 商店時應用。

  • 評論彈出窗口的顯示由 Google 的內部政策決定,無法隨意更改。
  • 如果應用程序 ID 與 Google 市場相關聯,則可以在安裝了 Google Play 商店的 Android 設備上顯示。
  • 為了增強用戶隱私保護並防止 API 濫用,建議根據Google Play 應用內評論 API 指南調用 API。
  • 即使在開發中的版本中,顯示也由 Google 的內部政策決定。要設置持續顯示,請參考 Google 提供的應用內評論測試指南。

顯示 Android 原生評論彈出窗口

  • Android 原生評價彈出截圖

iOS 原生評價彈出條件

Hive SDK 提供了一個功能,允許在 iOS 環境中使用遊戲的用戶在遊玩過程中留下評論。與現有的評論彈出窗口不同,滿意度評估可以在不移動到市場的情況下進行,如果您回應評論請求,將直接帶您到寫作頁面。使用 iOS 原生評論彈出窗口的條件如下。

  • 即使您使用在 Hive 中常见的评论弹出窗口,它也可以与 iOS 原生评论弹出窗口同时使用。
  • 如果您使用在游戏中开发的自定义评论弹出窗口,则无法与 iOS 原生评论弹出窗口同时使用。

根據蘋果提供的政策,iOS 原生評審彈出窗口將顯示。

  • 曝光順序、文本、UI等不得隨意更改
  • 每個應用程序每年每個設備僅顯示3次彈出窗口,是否顯示根據蘋果的內部政策運作,因此不得隨意更改
  • 如果用戶在設備設置中禁用(關閉)應用內評分和評論項目,則不會顯示
  • 在開發中的版本中,無論曝光次數如何,始終顯示,但無法提交評分到市場
  • 使用TestFlight分發的應用程序將不會顯示

顯示 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];

退出彈出窗口

退出彈出窗口是一個詢問用戶是否退出遊戲的彈出窗口,並且還要求確認是否接收配備有 Hive 的遊戲推薦列表。

Note

出於政策原因,iOS 設備上不提供遊戲退出彈出窗口,僅在 Android 設備上可用。

Note

如果您直接实现结束弹出窗口并通过更多游戏按钮连接到m.withhive.com的游戏页面,则无法使用自定义视图。您必须通过设备上安装的浏览器导航到该URL。

退出彈出條件

根據Android應用程式開發指南,當用戶在遊戲過程中觸摸設備的返回按鈕時,應實現導航到當前頁面的上一頁。因此,當用戶在遊戲過程中觸摸設備的返回按鈕時,遊戲應該暫停,並詢問用戶是否要繼續遊戲或退出。當沒有上一頁可以返回時,顯示退出彈出窗口。這通常發生在用戶在遊戲大廳時。

顯示退出彈出窗口

  • 結束彈出視窗截圖

要顯示退出彈出窗口,請調用Promotion類的showExit()方法。在退出彈出窗口出現後,如果用戶點擊退出按鈕,promotionEventType將被賦值為PromotionEventType.EXIT。 這裡是一個顯示退出彈出窗口的示例代碼。由於蘋果政策,iOS設備上不提供退出彈出窗口,因此沒有iOS示例代碼。

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: Implement the app exit functionality
                // e.g.) 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);    
             // Unreal Engine 用戶    
             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);    
         }    
});