跳转至

Lebi

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

Note

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

与Lebi商店连接的流程图

商店选择屏幕

如果您可以同时提供 Google Play StoreLebi Store,您应该调用 showMarketSelection() 方法来显示一个屏幕,允许用户在这两个商店之间进行选择,在接收到 Google Play StoreLebi 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    
         }    
});