ユーザー獲得とは何ですか?¶
ユーザーがHive SDKが提供する招待機能を使って、自分の招待URLやQRコードをSNSで共有することで、新しいユーザーを引き付けることができます。招待した友達と招待された友達の両方に報酬が与えられます。招待されたユーザーがゲームをインストールし、特定の条件(条件と報酬はHive Consoleで設定できます)を満たすと、例えば特定のレベルに達することなどです。
招待の対象はHiveユーザーに限定されません。ユニークな招待URLとQRコードが各ユーザーに発行され、他のユーザーを招待したユーザーを特定します。
iOSユーザーが招待URLを介して参加すると、マッチングの損失を防ぐために次の通知ページが表示されます。
UAはユーザーに達成しやすい目標を提供し、彼らの興味とエンゲージメントを高めるために適切な報酬を与えるべきです。
UAの機能¶
- ゲームの招待URL/QRコードを発行して共有する
- インストールあたりのコスト (CPI)、友達がゲームをインストールした場合にユーザーと招待された友達の両方に報酬が与えられる
- アクションあたりのコスト (CPA)、友達がゲームをプレイ中にミッションを達成した場合にユーザーと招待された友達の両方に報酬が与えられる
UA 招待プロセス¶
報酬を得るには、ITEMを実装する必要があります。
ユーザー獲得キャンペーンの登録¶
Hive コンソールで UA キャンペーンを登録できます。2 種類のキャンペーンを提供しています。
- 友達招待による達成キャンペーン - 招待された友達がキャンペーンの目標を達成すると、ユーザーと新しい友達の両方が報酬を得ます
- ミッション達成によるキャンペーン - ミッションを完了した友達の数が設定された数に達すると、ユーザーと新しい友達の両方が報酬を得ます
キャンペーンを設定する方法の詳細については、Hive コンソールプロモーションを参照してください。
ユーザー獲得の実装¶
ゲーム内でUAのための招待状とキャンペーンUIを実装し、ユーザーにアプリのインストールを促します。
キャンペーン情報と招待URL/QRコードを受け取る¶
招待URL/QRコードとキャンペーン情報を受け取るには、PromotionクラスのgetAppInvitationData()
メソッドを呼び出してください。Hive SDKからの情報に基づいて招待ページまたはキャンペーン画面を作成できます。
以下は、Hive SDKにURL/QRコードおよびキャンペーン情報をリクエストするためのサンプルコードです。
API リファレンス: hive.Promotion.getAppInvitationData
APIリファレンス: Promotion::getAppInvitationData
API リファレンス: Promotion.getAppInvitationData
APIリファレンス: com.hive.Promotion.getAppInvitationData
APIリファレンス: PromotionInterface .getAppInvitationData
APIリファレンス: HIVEPromotion:getAppInvitationData
getAppInvitationData()
メソッドを呼び出した後、データはAppInivitationData
オブジェクトを介して送信されます。
AppInvitationDataオブジェクトの構成¶
フィールド名 | 説明 | タイプ |
---|---|---|
qrcode | ゲームへの招待のためのQRコード画像(ビットマップ画像をHEXA文字列タイプとして保存) | 文字列 |
inviteMessage | ゲームへの招待メッセージ | 文字列 |
inviteCommonLink | ゲームへの招待リンク | 文字列 |
inviteHivemsgLink | Hive メッセージによるゲームへの招待リンク | 文字列 |
eachCampaignList | キャンペーンが完了するたびに報酬を得るためのキャンペーンリスト | AppInvitationCampaignリスト |
stageCampaignList | ユーザーが招待目標を達成したときに報酬を得るためのキャンペーンリスト | AppInvitationCampaignStageリスト |
ソーシャルメディアによるメディアファイルの共有¶
Hive SDKは、キャンペーン情報の受信と招待URL/QRコードでは利用できないソーシャルメディアによる共有機能を提供します。以下のSNSとともに、Hive SDK v4.11.7で提供されるPromotionクラスのshowUAShare()
メソッドを使用してください。
- カカオトーク
- LINE
- フェイスブック
- フェイスブックメッセンジャー
Hive SDK v4.11.2以降、v4.11.7より前のバージョンでは、PlatformHelperクラスのshareText()
およびshareMedia()
メソッドを使用することで、この機能が利用可能です。
Warning
- 上記に挙げた以外の他のソーシャルメディアでプロモーションAPIを実装することは可能ですが、Hive SDKはその実装を保証することはできません。他の種類のソーシャルメディアを使用する前に必ずテストしてください。
- Facebookは短いテキストの共有をサポートしておらず、ウェブURLタイプのみです。
- ユーザーはFacebookやLINEを使用してメディアを即座に共有することはできません。追加のアクションとして、登録/送信ボタンをタップする必要があります。
メディアファイルの共有は、ファイルがユーザーのデバイスに保存されている場合にのみ利用可能です。URLを共有するには、テキスト共有機能を使用するか、URLからファイルをダウンロードしてください。以下は、ソーシャルメディアによるファイル共有を実装するためのサンプルコードです。
APIリファレンス: hive .Promotion.showUAShare
#include "HivePromotion.h"
FString 招待メッセージ = TEXT("InviteMessage"); // AppInvitationData.InviteMessage;
FString 招待リンク = TEXT("InviteLink"); // AppInvitationData.InviteCommonLink;
FHivePromotion::ShowUAShare(InviteMessage, InviteLink, FHivePromotionOnUAShareDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
if (Result.IsSuccess()) {
// API call success
}
}));
APIリファレンス: Promotion ::showUAShare
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;
// 招待メッセージ
string inviteMessage = appInvitationData.inviteMessage.c_str();
// 招待リンク
string inviteCommonLink = appInvitationData.inviteCommonLink.c_str();
Promotion::showUAShare(inviteMessage, inviteCommonLink, [=](ResultAPI const &result) {
if (result.isSuccess()) {
// 呼び出し成功
}
});
APIリファレンス: Promotion.showUAShare
import com.hive.Promotion
import com.hive.ResultAPI
// 招待メッセージ
val invitationMessage = appInvitationData?.inviteMessage ?: ""
// 招待リンク
val inviteCommonLink = appInvitationData?.inviteCommonLink ?: ""
Promotion.showUAShare(invitationMessage, inviteCommonLink, object: Promotion.PromotionShareListener{
override fun onPromotionShare(result: ResultAPI) {
if (result.isSuccess) {
// 呼び出し成功
}
}
})
APIリファレンス: com .hive.Promotion.showUAShare
import com.hive.Promotion;
import com.hive.ResultAPI;
// 招待メッセージ
String inviteMessage = appInvitationData.getInviteMessage();
// 招待リンク
String inviteCommonLink = appInvitationData.getInviteCommonLink();
Promotion.INSTANCE.showUAShare(inviteMessage, inviteCommonLink, result -> {
if (result.isSuccess()) {
// 成功した呼び出し
}
});
APIリファレンス: PromotionInterface.showUAShare
APIリファレンス: HIVEPromotion ::showUAShare:inviteLink:handler:
#import <HIVEService/HIVEService-Swift.h>
// 招待メッセージ
NSString *inviteMessage = appInvitationData.inviteMessage;
// 招待リンク
NSString *inviteCommonLink = appInvitationData.inviteCommonLink;
[HIVEPromotion showUAShare: inviteMessage inviteLink: inviteCommonLink handler: ^(HIVEResultAPI *result) {
if ([result isSuccess]) {
// call successful
}
}];
招待画面のデザイン¶
ユーザーが友達をゲームに招待するための招待画面が表示されます。招待画面を設計するには、AppInvitationData
オブジェクトのqrcode
またはinviteCommonLink
を利用してください。getAppInvitationData()
メソッド呼び出しの結果として渡されるAppInvitationDataオブジェクトのqrcodeまたはinviteCommonLinkを使用して、ゲーム内にゲーム招待画面を実装できます。招待ページには制限はありませんが、以下の情報は明確に記載する必要があります。
- 次の内容を含むキャンペーン; 招待が達成しなければならない目標、目標の説明、その目標を達成することによる報酬、招待が完了した回数、目標を達成するために必要な招待の数。
- 次の内容を含む招待; 招待できる友達のリストと、実際の招待を送信するための方法または手順を指定します。
キャンペーンと招待は、ゲームプランに応じて異なる画面で構成される場合があります。または、同じ画面にまとめて構成される場合もあります。
キャンペーン画面の設計¶
AppInvitationDataクラスはeachCampaignList
とstageCampaignList
変数を定義します。eachCampaignList
変数のデータ型はAppInvitationCampaignクラスであり、stageCampaignList
のデータ型は**AppInvitationCampaignState**です。それぞれがキャンペーンとキャンペーン達成情報を含みます。 キャンペーン画面は以下の情報を使用して構成されます。
AppInvitationCampaignオブジェクトの構成¶
No. | フィールド名 | 説明 | タイプ |
---|---|---|---|
1 | title | キャンペーンタイトル | 文字列 |
2 | description | キャンペーン説明 | 文字列 |
3 | imgUrl | キャンペーンアイコンの画像URL | 文字列 |
item | 報酬情報(‘key’と‘value’のデータタイプでJSONまたはHashMap形式。’key’はキャンペーン設定によって異なる) | Map | |
4 | count | キャンペーン達成数 | 整数 |
5 | limit | キャンペーン対象の最大数 | 整数 |
6 | goalCount | 達成情報(すべてのレベルの達成数) | 整数 |
- | order | キャンペーンが表示される順序 | 整数 |
- | campaignId | キャンペーンID(Hive サーバーによって発行されたユニークなキャンペーンID) | 整数 |
AppInvitationCampaignStageオブジェクトの構成¶
No. | フィールド名 | 説明 | タイプ |
---|---|---|---|
1 | title | キャンペーンタイトル | 文字列 |
2 | description | キャンペーン説明 | 文字列 |
3 | imgUrl | キャンペーンアイコンの画像URL | 文字列 |
item | 報酬情報(‘key’と‘value’のデータ型でJSONまたはHashMap形式。’key’はキャンペーン設定に応じて多様) | Map | |
4 | count | 達成したキャンペーンの数 | 整数 |
5 | limit | キャンペーン対象の最大数 | 整数 |
6 | goalCount | 達成情報(すべてのレベルを達成した数) | 整数 |
goalTotal | 達成情報(報酬を得るために必要なすべてのレベルを達成する数) | 整数 | |
- | order | キャンペーンが公開される順序 | 整数 |
- | campaignId | キャンペーンID(Hive サーバーによって発行されたユニークなキャンペーンID) | 整数 |
UA送信者の情報を確認中¶
ユーザー獲得送信者の情報は、クライアントAPIでも利用可能です。 新しいユーザーが最初に受け取ったUAリンクをクリックしてアプリをインストールし、実行します。その後、SDKの初期化とログインを実装します。次に、**Promotion**クラスでsetEngagementReady(true)
メソッドを呼び出します。その後、getAppInvitationSenderInfo
メソッドを呼び出すことで、UA送信者の情報をAppInvitationSenderInfo
オブジェクトを通じて確認できます。
以下はUA送信者の情報を確認するためのサンプルコードです。
API リファレンス: Promotion .getAppInvitationSenderInfo
```c++
include "HivePromotion.h"¶
FHivePromotion::GetAppInvitationSenderInfo(FHivePromotionOnAppInvitationSenderInfoDelegate::CreateLambda(this { if (Result.IsSuccess()) { //成功した呼び出しと招待者情報の確認
} }));
APIリファレンス: Promotion ::getAppInvitationSenderInfo
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;
Promotion::getAppInvitationSenderInfo([this](ResultAPI result, AppInvitationSenderInfo senderInfo) {
if (!result.isSuccess()) {
return;
}
if (senderInfo != NULL && !senderInfo.vid.empty()) {
// Successful call and check inviter information
}
});
APIリファレンス: Promotion.getAppInvitationSenderInfo
import com.hive.Promotion
import com.hive.ResultAPI
Promotion.getAppInvitationSenderInfo(object : Promotion.AppInvitationSenderInfoListener {
override fun onAppInvitationSenderInfo(result: ResultAPI, appInvitationSenderInfo: Promotion.AppInvitationSenderInfo?) {
if (!result.isSuccess) {
return
}
if (appInvitationSenderInfo != null && appInvitationSenderInfo.senderVid.isNotEmpty()) {
// 成功した呼び出しと招待者情報の確認
}
}
})
APIリファレンス: Promotion .INSTANCE.getAppInvitationSenderInfo
import com.hive.Promotion;
import com.hive.ResultAPI;
Promotion.INSTANCE.getAppInvitationSenderInfo((result, appInvitationSenderInfo) -> {
if (!result.isSuccess()) {
return;
}
if (appInvitationSenderInfo != null && !(appInvitationSenderInfo.getSenderVid().isEmpty())) {
// Successful call and check inviter information
}
});
APIリファレンス: HIVEPromotion getAppInvitationSenderInfo
AppInvitationSenderInfoオブジェクトの構成¶
番号 | フィールド名 | 説明 | タイプ |
---|---|---|---|
1 | vid | 送信者のvid | 文字列 |
CPA達成の通知¶
招待された友達がゲームをインストールするか、キャンペーンの目標に達したとき、ゲームは報酬を受け取るためにHiveサーバーにCPAの達成を通知する必要があります。報酬を与える前に、以下の作業を必ず完了してください。
両方の作業が完了したら、CPAが達成されたときにCPA達成通知APIを呼び出してください。