跳转至

Lebi

在中国,Google Play 商店不可用,因此Hive 平台创建了一个应用内购买模块,Lebi 商店。因此,中国的用户可以通过充值 Lebi(虚拟货币)来购买商品。根据设备类型,基于 Android 的设备可以选择 Google Play 商店或 Lebi 商店。为了用户的选择,按照以下步骤建立一个由 Lebi 支付的支付系统。请注意,iOS 不支持 Lebi 市场。

Note

使用认证 v4 的中国玩家需要登录会员。

与Lebi商店连接的流程图

商店选择屏幕

如果您可以同时提供 Google Play Store 和 Lebi Store,您应该调用 showMarketSelection() 方法来显示一个屏幕,允许用户在这两个商店之间进行选择,在接收到 Google Play Store 和 Lebi Market 代码作为 marketConnect() 方法调用(IAP v4 初始化)的结果后。

  • 当基于Android的设备有两个可用商店时的示例屏幕;Google Play商店和Lebi商店

以下是请求选择商店的屏幕的示例代码。

API 参考: hive .IAPV4.showMarketSelection

using hive;    
    IAPV4.showMarketSelection((ResultAPI result, List<IAPV4Type> typeList) => {    
        if (result.isSuccess()) {    
        // call successful    
        }    
});
#include "HiveIAPV4.h"

FHiveIAPV4::ShowMarketSelection(FIAPV4OnMarketSelectionDelegate::CreateLambda([this](const FHiveResultAPI& Result, const TArray<EHiveIAPV4Type>& MarketIds) {
        if (Result.IsSuccess()) {
                // API 调用成功
        }
}));

API 参考: IAPV4 ::showMarketSelection

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    IAPV4::showMarketSelection([=](ResultAPI const & result, vector<IAPV4Type> const & marketIDs) {    
        if (result.isSuccess()) {    
        // call successful    
        }    
});

API 参考: IAPV4.showMarketSelection

import com.hive.IAPV4    
    import com.hive.ResultAPI    
    IAPV4.showMarketSelection(object : IAPV4.IAPV4MarketInfoListener {    
         override fun onIAPV4MarketInfo(result: ResultAPI, iapV4TypeList: ArrayList<IAPV4.IAPV4Type>?) {    
             if (result.isSuccess) {    
                 // call successful    
             }    
         }    
})

API 参考: IAPV4 .INSTANCE.showMarketSelection

import com.hive.IAPV4;    
    import com.hive.ResultAPI;    

    IAPV4.INSTANCE.showMarketSelection((result, iapV4TypeList) -> {    
         if (result.isSuccess()) {    
             // call successful    
         }    
});

Lebi 余额查询

当用户选择Lebi商店时,调用IAPV4类的getBalanceInfo()方法以请求并显示Lebi余额。您可以从getBalanceInfo()中接收值作为balance。 以下是请求Lebi余额的示例代码。

API 参考: hive .IAPV4.getBalanceInfo

using hive;    
    IAPV4.getBalanceInfo((ResultAPI result, int balance) => {    
        if (result.isSuccess()) {    
        // call successful    
        }    
});
#include "HiveIAPV4.h"

FHiveIAPV4::GetBalanceInfo(FHiveIAPV4OnBalanceDelegate::CreateLambda([this](const FHiveResultAPI& Result, int32 balance) {
        if (Result.IsSuccess()) {
                // API调用成功 
        }
}));

API 参考: IAPV4 ::getBalanceInfo

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    IAPV4::getBalanceInfo([=](ResultAPI const & result, int balance) {    
        if (result.isSuccess()) {    
        // call successful    
        }    
});

API 参考: IAPV4.getBalanceInfo

import com.hive.IAPV4    
    import com.hive.ResultAPI    
    IAPV4.getBalanceInfo(object : IAPV4.IAPV4BalanceInfoListener {    
         override fun onIAPV4Balance(result: ResultAPI, balance: Int) {    
             if (result.isSuccess) {    
                 // call successful    
             }    
         }    
})

API 参考: IAPV4 .INSTANCE.getBalanceInfo

import com.hive.IAPV4;    
    import com.hive.ResultAPI;    

    IAPV4.INSTANCE.getBalanceInfo((result, balance) -> {    
         if (result.isSuccess()) {    
             // call successful    
         }    
});

Lebi Charging Screen

当Lebi缺少余额时,从IAPV4类调用showCharge()以显示充电屏幕。充电后,您可以通过showCharge()的结果中的名为balance的变量检查余额。 以下是调用充电Lebi页面的示例代码。

API参考:hive .IAPV4.showCharge

using hive;    
    IAPV4.showCharge((ResultAPI result, int balance) => {    
    if (result.isSuccess()) {    
    // call successful    
    }    
});
#include "HiveIAPV4.h"

FHiveIAPV4::ShowCharge(FHiveIAPV4OnBalanceDelegate::CreateLambda([this](const FHiveResultAPI& Result, int32 balance) {
        if (Result.IsSuccess()) {
                // API 调用成功
        }
}));

API 参考: IAPV4 ::showCharge

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    IAPV4::showCharge([=](ResultAPI const & result, int balance) {    
         if (result.isSuccess()) {    
             // call successful    
         }    
});

API 参考: IAPV4.showCharge

import com.hive.IAPV4    
    import com.hive.ResultAPI    
    IAPV4.showCharge(object : IAPV4.IAPV4BalanceInfoListener {    
         override fun onIAPV4Balance(result: ResultAPI, balance: Int) {    
             if (result.isSuccess) {    
                 // call successful    
             }    
         }    
})

API 参考: IAPV4 .INSTANCE.showCharge

import com.hive.IAPV4;    
    import com.hive.ResultAPI;    

    IAPV4.INSTANCE.showCharge((result, balance) -> {    
         if (result.isSuccess()) {    
             // call successful    
         }    
});