メインコンテンツへスキップ
Go SDK を使用すると、実験を実行したり機能フラグを有効化したりできます。当社の SDK をウェブアプリケーションに統合するのは簡単で、フットプリント(メモリおよびネットワーク使用量)も小さく抑えられています。 はじめに: 入門ガイドについては、開発者ガイドを参照してください。 変更履歴: Go SDK の最新バージョン: 3.20.0 変更履歴 SDK メソッド: Go SDK の完全なリファレンスドキュメントについては、リファレンスセクションを参照してください。

開発者ガイド

このセクションに従って SDK をインストール・設定し、高度な機能について学習してください。

はじめに

Go クライアントのインストール

Kameleoon Go SDK をインストールするには、go get コマンドを使用して、GitHub リポジトリから直接パッケージをインストールします。以下のコマンドを実行するだけです:

追加設定

Go SDK の追加設定を提供するには、設定ファイルを使用して SDK の動作をカスタマイズできます。サンプル設定ファイルは こちら からダウンロードできます。 このファイルはデフォルトパス /etc/kameleoon/client-go.yaml にインストールすることをお勧めします。このパスは自動的に読み込まれます。このパスをカスタマイズする必要がある場合は、NewClient() メソッドに追加引数を指定できます。設定ファイルへの代替パスを示す文字列を指定するか、設定を含む JavaScript オブジェクト(マップ)を追加します。 現行バージョンの Go SDK では、設定ファイルで以下のキーを使用できます:
client_id および client_secret の詳細と取得方法については、こちらの記事を参照してください。当社の Go SDK は Automation API を利用しており、OAuth 2.0 クライアント認証情報フローに従っていることに注意してください。

Kameleoon クライアントの初期化

アプリケーションに SDK をインストールしたら、Kameleoon を初期化する必要があります。実験のトリガーなど、SDK とのすべてのやり取りは、NewClient() メソッドを使用して作成されたオブジェクト(Kameleoon クライアント)を介して行われます。 設定オブジェクトを提供することで、SDK の動作(例: 環境や認証情報)をカスタマイズできます。

機能フラグの有効化

ユーザーへの一意の ID の割り当て
ユーザーに一意の ID を割り当てるには、GetVisitorCode() メソッドを使用できます。訪問者コードが(リクエストヘッダーのクッキーから)存在しない場合、このメソッドはランダムな一意の ID を生成するか、生成済みの defaultVisitorCode を使用します。ID はその後、レスポンスヘッダーのクッキーに設定されます。 ハイブリッドモードで Kameleoon を使用している場合、GetVisitorCode() メソッドを呼び出すと、一意の ID(訪問者コード)がアプリケーションファイル engine.js(以前は kameleoon.js という名称)と SDK の間で共有されることが保証されます。
フラグ設定の取得
コードに機能フラグを実装するには、まず Kameleoon アカウントで機能フラグを作成する必要があります。 特定のユーザーに対する機能フラグのステータスまたはバリエーションを決定するには、GetVariation() または IsFeatureActive() メソッドを使用して、featureKey に基づいて設定を取得します。 GetVariation() メソッドは、ON/OFF 状態のシンプルな機能フラグと、複数のバリエーションを持つより複雑なフラグの両方を処理します。このメソッドは、機能ルールをチェックし、バリエーションを割り当て、featureKey および visitorCode に基づいてそれを返すことで、ユーザーに適切なバリエーションを取得します。 IsFeatureActive() メソッドは、複数のバリエーションやターゲティングオプションを持つ複雑な機能フラグとは対照的に、ON または OFF 状態のみのシンプルな機能フラグの設定を取得したい場合に使用できます。 機能フラグに関連付けられた変数(例: 各バリエーションに関連付けられた特定の動作)がある場合、GetVariation() を使用すると Variation オブジェクトにもアクセスでき、割り当てられたバリエーションとその関連実験の詳細を提供します。このメソッドはユーザーがターゲットされているかをチェックし、訪問者に割り当てられたバリエーションを見つけて、それをストレージに保存します。GetVariationOptParams.Track=true の場合、SDK は次のトラッキングリクエストで指定された実験に露出イベントを送信します。これは SDK の tracking_interval に基づいて自動的にトリガーされます。デフォルトでは、この間隔は 1000 ミリ秒(1 秒)に設定されています。 GetVariation() メソッドでは、トラッキングを行うかどうかを制御できます。GetVariationOptParams.Track=false の場合、SDK によって露出イベントは送信されません。これは、たとえば SDK を介してデータをトラッキングするのではなく、Kameleoon エンジンが管理するクライアント側のトラッキングに依存することを希望する場合に便利です。さらに、GetVariationOptParams.Track=false の設定は、GetVariations() メソッドを使用する場合にも役立ちます。トラッキングイベントをトリガーせずに、すべてのフラグのバリエーションだけが必要な場合などです。トラッキングがどのように機能するかについて詳しくは、この記事を参照してください。
レポートでユーザーをターゲットしたり、訪問をフィルター/ブレークダウンするためのデータポイントの追加
ユーザーをターゲットするには、機能のバリエーションを取得したり、フラグがアクティブかどうかを確認したりする前に、関連するデータポイントをプロファイルに追加していることを確認してください。これらのデータポイントをユーザーのプロファイルに追加するには、AddData() メソッドを使用します。 他のデバイスで収集されたデータポイントを取得したり、過去のユーザーデータ(Kameleoon をハイブリッドモードで使用しているときにクライアント側で収集されたもの)にアクセスするには、GetRemoteVisitorData() メソッドを使用します。このメソッドはサーバーから非同期にデータを取得します。このデータは特定のバリエーションにユーザーを割り当てるために必要な場合があるため、バリエーションを取得したり機能フラグがアクティブかどうかを確認したりする 前に GetRemoteVisitorData() を呼び出すことが重要です。 利用可能なターゲティング条件の詳細については、このテーマに関する詳細な記事を参照してください。 さらに、訪問者プロファイルに追加したデータポイントは、実験を分析する際に利用でき、デバイスやブラウザなどの要因で結果をフィルタリングおよびブレークダウンできます。Kameleoon のハイブリッドモードはクライアント側でさまざまなデータポイントを自動的に収集するため、これらの事前収集されたデータポイントに基づいて結果を簡単にブレークダウンできます。完全なリストはこちらを参照してください。 自動的に収集される以上の追加のデータポイントを追跡する必要がある場合は、Kameleoon のカスタムデータ機能を使用できます。カスタムデータを使用すると、実験に関連する特定の情報をキャプチャして分析できます。収集したデータを分析のために Kameleoon サーバーに送信するには、Flush*() メソッドを呼び出すことを忘れないでください。
結果の精度を確保するために、UserAgent データ型を使用してボットを除外することをお勧めします。
フラグ露出とゴール転換の追跡
ユーザーが望ましいアクション(購入など)を完了すると、それはコンバージョンとして記録されます。コンバージョンを追跡するには、TrackConversion() メソッドを使用して、必須の visitorCode および goalId パラメータを提供します。 コンバージョン追跡リクエストは、次回スケジュールされているトラッキングリクエストとともに送信されます。これは SDK が一定間隔(tracking_interval で定義)で送信します。すぐにリクエストを送信したい場合は、FlushVisitorInstantly() メソッドを使用します。
分析ソリューションへのイベントの送信
コンバージョンを追跡し、露出イベントを顧客分析ソリューションに送信するには、まず ハイブリッドモードで Kameleoon を実装する必要があります。その後、GetEngineTrackingCode() メソッドを使用します。 GetEngineTrackingCode() メソッドは、分析ソリューションに露出イベントを送信するために必要な一意のトラッキングコードを取得します。このメソッドを使用すると、イベントを記録して希望の分析プラットフォームに送信できます。

クロスデバイス実験

複数のデバイスからアプリにアクセスする訪問者をサポートするため、Kameleoon はクロスデバイス実験を通じて、訪問者の各デバイス間で以前に収集された訪問者データを同期し、訪問履歴を調整できます。Kameleoon がデバイス間でデータをどのように扱うかに関するケーススタディと詳細情報は、クロスデバイス実験に関する記事で確認できます。

デバイス間でのカスタムデータの同期

訪問者データをデバイス間で整合させるためにカスタムマッピング同期が使用されますが、常に必要なわけではありません。以下は、カスタムマッピング同期が必要ない 2 つのシナリオです: デバイス間で同じユーザー ID すべてのデバイスで一貫して同じユーザー ID が使用されている場合、カスタムマッピング同期なしで同期が自動的に処理されます。複数のデバイス間で収集されたデータを同期したい場合、GetRemoteVisitorData() メソッドを呼び出すだけで十分です。 一貫した ID を持つマルチサーバーインスタンス 複数のサーバー(例: 分散サーバーインスタンス)を含む複雑な設定で、サーバー間で同じユーザー ID が利用できる場合、追加のカスタムマッピング同期なしで、サーバー間の同期(GetRemoteVisitorData() を使用)で十分です。 追加データが必要なお客様は、GetRemoteVisitorData() メソッドの説明を参照して、さらなるガイダンスを得ることができます。以下のコードでは、正確なデータ取得のために 2 つのデバイス間で同じ一意の識別子(この場合、userId とも呼ばれる visitorCode)が一貫して使用されていると仮定しています。
収集したデータをリアルタイムで同期したい場合は、カスタムデータのスコープに Visitor を選択する必要があります。
デバイス A
デバイス B

セッションマージ用のカスタムデータの使用

クロスデバイス実験では、訪問者のデバイスごとに履歴を結合できます(履歴の調整)。履歴の調整により、異なる訪問者セッションを 1 つにマージできます。訪問履歴を調整するには、CustomData を使用して訪問者の一意の識別子を提供します。詳細については、専用ドキュメントを参照してください。 クロスデバイスの調整が有効になった後、パラメータ userId を指定して GetRemoteVisitorData() を呼び出すと、指定したユーザーの既知のすべてのデータが取得されます。 同じ識別子を持つセッションは、実験で常に同じバリエーションが表示されます。実験の結果ページの Visitor ビューでは、これらのセッションは単一の訪問者として表示されます。 SDK 設定により、関連付けられたセッションは常に同じバリエーションの実験を見ることが保証されます。ただし、クロスデバイスのバリエーション割り当てに関していくつかの制限があります。これらの制限はこちらで概説されています。 クロスデバイス履歴調整の有効化ガイドに従って、Kameleoon プラットフォーム上でカスタムデータを設定します。 その後、SDK を通常通り使用できます。セッションマージのコンテキストで役立つ可能性のあるメソッドは次のとおりです:
  • UniqueIdentifier(true) を追加した GetRemoteVisitorData() - リンクされたすべての訪問者のデータを取得します。
  • UniqueIdentifier(true) データを追加した TrackConversion() または Flush*() - 別の訪問者に関連付けられた特定の訪問者の一部のデータを追跡します。
識別子として使用するカスタムデータは Visitor スコープに設定する必要があるため、各デバイスで GetRemoteVisitorData() メソッドを使用して識別子を取得するには、クロスデバイスカスタムデータ同期を使用する必要があります。
セッションマージにカスタムデータを使用する方法の例を以下に示します。
この例では、アプリケーションにログインページがあります。ログイン時にはユーザー ID が不明であるため、GetVisitorCode() メソッドで生成された匿名の訪問者識別子が使用されます。ユーザーがログインした後、匿名の訪問者がユーザー ID に関連付けられ、訪問者の一意の識別子として使用されます。

カスタムバケッティングキーの使用

デフォルトでは、Kameleoon はユーザーを機能フラグのバリエーションに割り当てるために、一意の匿名訪問者 ID(visitorCode)を使用します。この ID は通常、ユーザーのデバイス上で生成・保存されます(クライアント側およびサーバー側 SDK ではブラウザクッキー、モバイル SDK では永続ストレージ)。ただし、特定のシナリオでは、同じ組織のすべてのユーザーが同じ機能フラグのバリアントを見ることを保証する必要がある場合があります。 カスタムバケッティングキーオプションを使用すると、独自のカスタム識別子をバケッティングに提供することで、このデフォルトの動作を上書きできます。この上書きにより、Kameleoon の割り当てロジックは、デフォルトの visitorCode ではなく、指定したキーを使用します。

ユースケース

カスタムバケッティングキーを使用することは、特に次の状況において、機能フラグ割り当ての一貫性と精度を維持するために不可欠です:
  • アカウントレベルまたは組織レベルの実験: B2B 製品や、同じ組織のすべてのユーザーを同じバリエーションに割り当てたいシナリオでは、accountId のような識別子を使用できます。カスタムバケッティングキーは、チームや会社全体に影響を与える機能の A/B テストにとって極めて重要です。
カスタムバケッティングキーを実装することで、実験における整合性と精度を高め、より信頼性の高い結果とより良いユーザーエクスペリエンスにつながります。

技術的な詳細

機能フラグにカスタムバケッティングキーを設定する際、アプリケーションのデータから特定の識別子を Kameleoon に提供します:
  • カスタムキーの提供: AddData() メソッドを使用して、選択したカスタム識別子を Kameleoon SDK に提供します。このメソッドでは、選択したカスタムバケッティングキーを CustomData オブジェクトとして渡します。ここで、newVisitorCode はバケッティングに使用したい識別子(例: 新しい userId または accountId)を指します。
カスタムバケッティングキーが正しく機能するためには、フラグの作成または編集プロセス中に、機能フラグに対しても定義および設定する必要があります。対応する設定がなければ、SDK のバケッティングはカスタムキーを適用しません。Kameleoon でこれを設定する詳細な手順については、この記事を参照してください。
  • バケッティングロジック: AddData() メソッドを通じてカスタムバケッティングキーが提供されると、ユーザーをバリエーションに割り当てるためのすべてのハッシュ計算では、デフォルトの visitorCode ではなく、この newVisitorCode(カスタムキー)が使用されます。newVisitorCode を使用すると、バケッティングの決定がカスタム識別子に紐付けられ、その識別子が存在するさまざまなコンテキスト全体で一貫した割り当てが保証されます。
  • データ追跡と分析: バケッティング決定には newVisitorCode(カスタムキー)が使用されますが、後続のすべてのデータ(例: トラッキングイベントとコンバージョン)は、元の visitorCode に関連付けて送信されることに注意することが重要です。 この分離により、バケッティングがより高いレベル(アカウントなど)または複数のデバイス/セッションにわたって実行された場合でも、分析が実験の広範なコンテキスト内で個々のユーザーのジャーニーやインタラクションを正確に反映します。元の訪問者データは、包括的なレポーティングのためにそのまま保持されます。

技術要件

カスタムバケッティングキーを効果的に使用するには:
  • キーは string でなければなりません。
  • バケッティング対象のエンティティに対して一意でなければなりません(例: userId を使用する場合、各ユーザーの ID は一意である必要があります)。
  • そのユーザーまたはリクエストに対して機能フラグの決定が評価される瞬間に、キーが SDK で利用可能でなければなりません。

ターゲティング条件

Kameleoon SDK は、キャンペーンでユーザーをターゲットするために使用できるさまざまな事前定義されたターゲティング条件をサポートしています。この SDK がサポートする条件のリストについては、訪問履歴を使用してユーザーをターゲットするを参照してください。 外部データを使用してユーザーをターゲットすることもできます。

ロギング

SDK は、さまざまな内部プロセスや問題を反映するログを生成します。

ログレベル

SDK は、ログレベルによるロギングの制限の設定をサポートしています。

ログのカスタム処理

SDK はデフォルトでログをコンソール出力に書き込みます。この動作は上書き可能です。
ログレベルによるロギングの制限は、ログ処理ロジックとは別に実行されます。

リファレンス

これは Go SDK の完全なリファレンスドキュメントです。

初期化

Create()

SDK を初期化するために、他のメソッドより先にこのメソッドを呼び出します。このメソッドは KameleoonClientFactory にあります。これにより、SDK とアプリ間のすべての対話を管理する KameleoonClient のインスタンスが作成されます。
引数
戻り値

CreateFromFile()

SDK を初期化するために、他のメソッドより先にこのメソッドを呼び出します。このメソッドは KameleoonClientFactory にあります。これにより、SDK とアプリ間のすべての対話を管理する KameleoonClient のインスタンスが作成されます。
引数
戻り値

Forget()

Forget メソッドは、指定された siteCode を持つ KameleoonClient インスタンスを KameleoonClientFactory から削除し、KameleoonClient インスタンスが使用するリソースを解放します。Forget メソッドを呼び出した後は、KameleoonClient インスタンスを使用しないでください。
引数

WaitInit()

Kameleoon クライアントの初期化は即時には完了しません。アクティブなすべての実験と機能フラグの現在の設定を取得するために、CDN(コンテンツデリバリーネットワーク)へのサーバーリクエストが必要となるためです。 kameleoon.KameleoonClientWaitInit メソッドを使用すると、KameleoonClient インスタンスが使用可能になるまで待機できます。
戻り値

機能フラグとバリエーション

IsFeatureActive() / IsFeatureActiveWithTracking()

  • 📨 Kameleoon にトラッキングデータを送信します(track パラメータに依存)
複数のバリエーションやターゲティングオプションを持つより複雑な機能フラグとは対照的に、ON / OFF 状態のみのシンプルな機能フラグの設定を取得したい場合は、このメソッドを使用してください。機能フラグにバリエーションや変数がある場合は、GetVariation メソッドを使用する必要があります。 visitorCodefeatureKey を必須引数として取り、特定のユーザーに対して機能フラグがアクティブかどうかを確認します。 ユーザーが以前に機能フラグに関連付けられていない場合、SDK はランダムなブール値(ユーザーがこの機能を持つべき場合は true、そうでない場合は false)を返します。ただし、ユーザーがすでにこの機能フラグに登録されている場合、SDK は以前の機能フラグ値を検出します。
コード例に示されているように、発生する可能性のある例外をキャッチするために、コードに適切なエラー処理を設定することが重要です。
visitorCode を指定すると、IsFeatureActive メソッドはそれを一意の訪問者識別子として使用します。これはクロスデバイス実験に役立ちます。visitorCode を指定して isUniqueIdentifier パラメータを true に設定すると、SDK はフラッシュされたデータを指定された識別子に関連付けられた訪問者にリンクします。
isUniqueIdentifier パラメータは非推奨です。代わりに UniqueIdentifier を使用してください。isUniqueIdentifier は固有の状況で役立つ場合があります。たとえば、訪問者に付与された匿名の visitorCode にアクセスできないものの、セッションマージを通じてその訪問者にリンクされた内部 ID を使用できる場合です。
Kameleoon は、IsFeatureActive()GetVariation()GetVariations() などの特定のメソッドを呼び出した際に、セッションと訪問者数をカウントするためにトラッキングを使用します。訪問者をバリエーションに露出させてカウントする必要がある場合は、GetVariationOptParams.Track パラメータのデフォルト値 true を使用してください。訪問者を露出させる前にこれらのメソッドを呼び出す場合のみ、GetVariationOptParams.Track パラメータを false に設定してください。たとえば、訪問者を露出させる前にすべてのバリエーションを取得するために GetVariations() を呼び出す場合、GetVariationsOptParams.Track パラメータを false に設定してください。この設定により、Kameleoon が早すぎるタイミングでセッションをカウントするのを防ぎます。その後、訪問者を明示的に露出させたときにトラッキングをトリガーできます。Kameleoon はデフォルトで毎秒トラッキングデータを送信します。この間隔は、トラッキング間隔の設定オプションを使用して最大 5 秒まで設定できます。Kameleoon は、イベント間の間隔が 30 分未満である限り、トラッキングイベントを単一のセッションにグループ化します。トラッキングイベント間で 30 分以上経過した場合、Kameleoon はイベントを別個のセッションとしてカウントします。訪問は、セッションで最後に記録されたイベントから 30 分後にレポートに表示されます。
IsFeatureActive() メソッドは、マスターフラグの状態ではなく、配信されたバリアントを評価します。ルールを除外する場合、メソッドは その他の全員にはこれを配信 のデフォルト状態を使用します。このデフォルト状態に Off を選択した場合、マスター機能フラグが On であっても、このメソッドは常に false を返します。
引数
戻り値
スローされる例外

GetVariation()

  • 📨 Kameleoon にトラッキングデータを送信します(GetVariationOptParams.Track パラメータに依存)
特定の機能フラグについて、指定された訪問者に割り当てられた Variation を取得します。 このメソッドは visitorCodefeatureKey を必須引数として取ります。GetVariationOptParams.Track 引数はオプションで、デフォルトは true です。 訪問者に割り当てられた Variation を返します。訪問者がどの機能フラグルールにも関連付けられていない場合、メソッドは指定された機能フラグのデフォルト Variation を返します。 潜在的な例外を管理するために、コードに適切なエラー処理が実装されていることを確認してください。
デフォルトバリエーションとは、機能フラグの事前定義された配信ルールに一致しない訪問者に割り当てられるバリエーションのことです。言い換えれば、特定のルールでターゲットされていないすべてのユーザーに適用されるフォールバックバリエーションです。管理インターフェースの「その他の全員には…を配信」セクションのバリエーションとして表現されます。
引数
戻り値
スローされる例外

GetVariations()

  • 📨 Kameleoon にトラッキングデータを送信します(GetVariationsOptParams.Track パラメータに依存)
すべての機能フラグについて、指定された訪問者に割り当てられた Variation オブジェクトのマップを取得します。 このメソッドは、利用可能なすべての機能フラグを反復し、指定された訪問者に関連付けられた各フラグの割り当てられた Variation を返します。visitorCode を必須引数として取り、GetVariationsOptParams.OnlyActiveGetVariationsOptParams.Track はオプションです。
  • GetVariationsOptParams.OnlyActivetrue に設定されている場合、GetVariations() メソッドは、ユーザーが off バリエーションでバケッティングされていない場合に限り、機能フラグのバリエーションを返します。
  • GetVariationsOptParams.Track パラメータは、メソッドがバリエーション割り当てを追跡するかどうかを制御します。デフォルトでは true に設定されています。false に設定されている場合、トラッキングは無効になります。
返されるマップは、機能フラグキーをキーとし、対応する Variation を値として持ちます。機能フラグにバリエーションが割り当てられていない場合、メソッドはそのフラグのデフォルト Variation を返します。 潜在的な例外を管理するために、適切なエラー処理を実装する必要があります。
デフォルトバリエーションとは、機能フラグの事前定義された配信ルールに一致しない訪問者に割り当てられるバリエーションのことです。言い換えれば、特定のルールでターゲットされていないすべてのユーザーに適用されるフォールバックバリエーションです。管理インターフェースの「その他の全員には…を配信」セクションのバリエーションとして表現されます。
引数
戻り値
スローされる例外
引数
戻り値
スローされる例外

SetForcedVariation()

このメソッドを使用すると、標準の評価プロセスをバイパスして、特定の Variation をユーザーにプログラムで割り当てることができます。これは、通常の評価ロジックが不要、またはスキップする必要がある制御された実験で特に有用です。また、デバッグやカスタムテストなどのシナリオでも役立ちます。 強制バリエーションが設定されると、Kameleoon のリアルタイム評価ロジックを上書きします。セグメンテーション、ターゲティング条件、アルゴリズム計算などのプロセスはスキップされます。実験中にセグメンテーションとターゲティング条件を保持するには、代わりに SetForcedVariationOptParams.ForceTargeting=false を設定します。
シミュレートされたバリエーションは、実行順序で常に優先されます。シミュレートされたバリエーション計算がトリガーされると、それが最初に完全に処理および完了されます。
強制バリエーションは、評価されたバリエーションと同様に扱われます。標準の評価されたバリエーションと同様に、分析でトラッキングされ、ユーザーコンテキストに保存されるため、レポーティングの一貫性が保たれます。 特定の条件下(例: 無効なパラメータ、ユーザーコンテキスト、または内部の問題)で、メソッドが例外をスローする場合があります。アプリケーションの安定性と耐久性を確保するために、適切な例外処理が不可欠です。
強制バリエーションと シミュレートされた バリエーションを区別することが重要です:
  • 強制バリエーション: 個別の実験に固有のものです。
  • シミュレートされたバリエーション: 全体的な機能フラグの結果に影響を与えます。
引数
スローされる例外

EvaluateAudiences()

  • 📨 Kameleoon にトラッキングデータを送信します
このメソッドは、利用可能なすべての Audiences Explorer セグメントに対して訪問者を評価し、一致する訪問者をトラッキングします。 EvaluateAudiences() は、関連するすべての訪問者データが設定または更新された後、機能のバリエーションを取得する、または機能フラグを確認する 直前 に呼び出す必要があります。このアプローチにより、訪問者が利用可能な最新のデータに対して評価されることを保証し、すべての基準に基づいた正確なオーディエンス割り当てが可能になります。 このメソッドを呼び出した後、Audiences Explorer でセグメントパフォーマンスの詳細な分析を実行できます。
引数
スローされる例外

GetDataFile()

すべての機能フラグを評価するには、GetVariations() を使用します。このメソッドは、DataFile を呼び出してフラグを反復処理し GetVariation() を実行するよりも効率的です。
現在の SDK 設定を DataFile オブジェクトとして返します。
戻り値

訪問者データ

GetVisitorCode()

このメソッドは以前 ObtainVisitorCode と呼ばれており、SDK バージョン 3.0.0 で削除されました。
特に Kameleoon を ハイブリッドモードで使用する場合のユーザー識別の一貫性を確保するために、現在の訪問者の Kameleoon visitorCode を取得するために GetVisitorCode() メソッドを呼び出す必要があります。以下にその仕組みを説明します:
  1. Kameleoon は、現在の HTTP リクエストに関連付けられた kameleoonVisitorCode クッキーがあるかどうかを確認します。見つかった場合、Kameleoon はこのコードを訪問者識別子として使用します。
  2. クッキーが見つからない場合、メソッドは新しい識別子をランダムに生成するか、defaultVisitorCode 引数が渡された場合はそれを使用します。識別子を訪問者コードとして使用することで、追加の検索なしで Kameleoon 訪問者と自社のユーザーを一致させることができます。
  3. 次に、サーバー側の kameleoonVisitorCode クッキーが HTTP ヘッダー経由で識別子値で設定され、メソッドが識別子値を返します。
詳細については、こちらの記事を参照してください。
Kameleoon が生成した visitorCode を使用する代わりに、独自の User ID を提供する場合、User ID が一意であることを保証するのはあなたの責任です。SDK は一意性をチェックしません。提供する User ID は 255 文字を超えてはならないことに注意することが重要です。超過した文字数は例外を発生させます。
GetVisitorCode() メソッドを使用すると、訪問者に シミュレートされた バリエーションを設定できます。クッキー(リクエスト または ドキュメント からのもの)に kameleoonSimulationFFData キーが含まれている場合、標準の評価プロセスはバイパスされます。代わりに、メソッドは提供されたデータに基づいて Variation を直接返します。シミュレーションは 2 つの方法で適用できます:
  • 自動的に(推奨): Kameleoon Web Experimentation または SDK を ハイブリッドモード で使用している場合、シミュレーションパネル を使用してバリアントの表示をシミュレートすると、クッキーが自動的に作成されます。
  • 手動で: kameleoonSimulationFFData クッキーを手動で設定します。
シミュレートされたバリエーションと 強制 バリエーションを区別することが重要です:
  • シミュレートされたバリエーション: 全体的な機能フラグの結果に影響を与えます。
  • 強制バリエーション: 個別の実験に固有のものです。
⚙️ 手動設定kameleoonSimulationFFData クッキーが以下の形式に従うことを確認してください:
  • kameleoonSimulationFFData={"featureKey":{"expId":10,"varId":20}}: 指定された featureKey に対して、実験 expIdvarId を持つバリエーションをシミュレートします。
  • kameleoonSimulationFFData={"featureKey":{"expId":0}}: 指定された featureKey に対して、デフォルトバリエーション(本番環境でその他の全員には…を配信 セクションで定義されたもの)をシミュレートします。
⚠️ 適切に機能させるために、クッキー値は encodeURIComponent などのメソッドを使用して URI コンポーネントとしてエンコードする必要があります。
引数
戻り値
スローされる例外

AddData()

AddData() メソッドは、他のメソッドが現在の訪問者をターゲットするかどうかを判断するために使用できる ターゲティングデータ をストレージに追加します。 AddData() メソッドは値を返さず、それ自体では Kameleoon バックエンドサーバーと通信しません。代わりに、宣言されたすべてのデータは Flush*() メソッドを使用して将来送信するために保存されます。このアプローチにより、データは通常 Flush*() によってトリガーされる単一のサーバーコールにグループ化されるため、行われるサーバーコール数が減少します。 TrackConversion() メソッドも、Flush*() と同様に以前に関連付けられたデータを送信します。実験ルールがトリガーされた場合、GetVariation() および GetVariations() メソッドにも同じことが当てはまります。
各訪問者は、ほとんどのデータ型に対して 1 つの関連データインスタンスしか持つことができません。ただし、CustomData は例外です。訪問者はインデックスごとに 1 つの関連 CustomData インスタンスを持つことができます。
引数
例外

FlushAll() / FlushVisitor() / FlushVisitorInstantly()

  • 📨 Kameleoon にトラッキングデータを送信します
FlushAll()/FlushVisitor()/FlushVisitorInstantly() メソッドは、訪問者にリンクされた Kameleoon データを収集します。次に、AddData メソッドを使用して追加され、これらのメソッドのいずれかを使用してまだ送信されていないすべてのデータとともに、トラッキングリクエストを送信します。サーバーコールは非同期で行われるため、Flush*() は非ブロッキングです。 Flush*() を使用すると、特定の visitorCode に関連付けられたデータがいつサーバーに送信されるかを制御できます。たとえば、AddData() を 12 回呼び出した場合、AddData() が呼び出されるたびにサーバーにデータを送信するのは非効率的なので、最後に一度だけ Flush() を呼び出すだけで済みます。 FlushVisitor()/FlushVisitorInstantly() メソッドは visitorCode を一意の訪問者識別子として使用します。これはクロスデバイス実験に役立ちます。visitorCode を指定して isUniqueIdentifier パラメータを true に設定すると、SDK はフラッシュされたデータを指定された識別子に関連付けられた訪問者にリンクします。
isUniqueIdentifier パラメータは非推奨です。代わりに UniqueIdentifier を使用してください。isUniqueIdentifier は固有の状況で役立つ場合があります。たとえば、訪問者に付与された匿名の visitorCode にアクセスできないものの、セッションマージを通じてその訪問者にリンクされた内部 ID を使用できる場合です。
引数
スローされる例外

GetRemoteData()

GetRemoteData() メソッドは、引数として渡された key に従って、指定された siteCode(KameleoonClient コンストラクタで指定されたもの)について Kameleoon のリモートサーバーに保存されている外部データを取得します。このキーは通常、Kameleoon 訪問者コードまたは User ID です。 このメソッドを使用して、ユーザー設定、履歴データ、または他のアプリケーションのロジックに関連するデータを取得できます。当社の Data API を使用してこのデータを高度にスケーラブルなサーバーに保存することで、大量のデータを効率的に管理し、すべての訪問者またはユーザーのデータを取得できます。 メソッドの戻り値は、json.Unmarshal() 関数を使用してデコードできる JSON オブジェクトです。このデータを使用して、機能フラグや実験の高度なターゲティングセグメントを構築したり、取得したデータに格納されている値に基づいて実験およびパーソナライゼーションレポートをフィルタリングしたりできます。
サーバーコールが必要なため、このメカニズムは非同期です。
Mixpanel、Segment、GA4 との組み込み統合を提供しており、外部コホートを取得して機能実験で利用できます。これらの統合で利用されるキーは、当社の訪問者コードまたは User ID のいずれかです。Mixpanel コホートを取得して利用するには、以下のサンプルコードを参照してください:
引数
戻り値
スローされる例外

GetRemoteVisitorData()

GetRemoteVisitorData() は、Kameleoon Data API から VisitorCode の Kameleoon 訪問データを取得するための非同期メソッドです。このメソッドは、他のメソッドがターゲティング決定を行うときに使用できるようにデータをストレージに追加します。 このメソッドで取得したデータは、以下の場合に重要な役割を果たします:
  • 他のデバイスから収集されたデータを使用したいとき。
  • 過去の訪問中に訪れたページなど、ユーザーの履歴にアクセスしたいとき。
  • データレイヤー変数や、フロントエンドでのみコンバージョンするゴールなど、クライアント側でのみアクセス可能なデータを使用したいとき。
可能なユースケースをよりよく理解するには、この記事を読んでください。
デフォルトでは、GetRemoteVisitorData() は、Scope=Visitor で保存されている最新のカスタムデータを自動的に取得し、AddData() メソッドを呼び出すことなく訪問者にそれらを添付します。これは、複数のデバイス間でカスタムデータを同期する場合に特に便利です。
IsUniqueIdentifier パラメータは非推奨です。代わりに UniqueIdentifier を使用してください。isUniqueIdentifier は固有の状況で役立つ場合があります。たとえば、訪問者に付与された匿名の visitorCode にアクセスできないものの、セッションマージを通じてその訪問者にリンクされた内部 ID を使用できる場合です。
GetRemoteVisitorData の引数
GetRemoteVisitorDataWithFilter の引数
GetRemoteVisitorDataWithOptParams の引数
GetRemoteVisitorDataWithOptParams メソッドは非推奨です。代わりに GetRemoteVisitorDataWithFilterUniqueIdentifier を使用してください。
kameleoon.RemoteVisitorDataOptParams のフィールドリストは次のとおりです:kameleoon.RemoteVisitorDataOptParams のデフォルト値は types.RemoteVisitorDataFilter{PreviousVisitAmount: 1, CurrentVisit: true, CustomData: true} で、types.DefaultRemoteVisitorDataFilter() 関数で取得できます。
戻り値
GetRemoteVisitorData() でのパラメータの使用
GetRemoteVisitorData() メソッドは、訪問者のデータを取得する際にさまざまなパラメータを定義できる柔軟性を提供します。ゴール、実験、バリエーションに基づいてターゲットする場合でも、すべてのデータ型に対して同じアプローチが適用されます。 たとえば、「Order transaction」というゴールを完了した訪問者のデータを取得したいとします。GetRemoteVisitorData() メソッド内でパラメータを指定して、ターゲティングを絞り込むことができます。たとえば、過去 5 回の訪問でゴールでコンバージョンしたユーザーのみをターゲットする場合、PreviousVisitAmount パラメータを 5 に、Conversions を true に設定できます。 この例で示されている柔軟性は、ゴールデータに限定されません。GetRemoteVisitorData() メソッド内のパラメータを使用して、さまざまな訪問者の行動に関するデータを取得できます。
利用可能な types.RemoteVisitorDataFilter オプションのリストは次のとおりです:

GetVisitorWarehouseAudience()

指定された VisitorCodeWarehouseKey を使用して、データウェアハウス内で訪問者に関連付けられたすべてのオーディエンスデータを取得します。WarehouseKey は通常、内部のユーザー ID です。CustomDataIndex パラメータは、Kameleoon が訪問者をターゲットするために使用する Kameleoon カスタムデータに対応します。追加の詳細については、ウェアハウスターゲティングのドキュメントを参照してください。このメソッドは CustomData オブジェクトを返し、データが訪問者に追加され、ターゲティング目的で利用可能であることを確認します。
GetVisitorWarehouseAudience の引数
GetVisitorWarehouseAudienceWithOptParams の引数
kameleoon.VisitorWarehouseAudienceOptParams のフィールドリストは次のとおりです:
GetVisitorWarehouseAudience メソッドの場合、一部のパラメータをオプション(WarehouseKeyTimeout)にするために、パラメータは VisitorWarehouseAudienceParams 構造体の params として関数に渡されます。GetVisitorWarehouseAudienceWithOptParams メソッドの場合、オプションパラメータのみが VisitorWarehouseAudienceOptParams 構造体の params として関数に渡されます。
戻り値

SetLegalConsent()

このメソッドを使用して、訪問者が個人データの使用に法的同意を与えたかどうかを指定する必要があります。legalConsent パラメータを false に設定すると、トラッキングリクエストに含めることができるデータタイプが制限されます。このメソッドは、訪問者データを責任を持って管理しながら、法的および規制上の要件に従うのに役立ちます。個人データに関する詳細は、同意管理ポリシーで確認できます。
引数
スローされる例外
同意撤回の動作
SetLegalConsent()consent=false で呼び出した場合、SDK は kameleoonVisitorCode クッキーを削除しません。代わりに、クッキーの有効期限の延長を停止し、クッキーが自然に期限切れになるまで持続できるようにします。 コンプライアンス要件としてオプトアウト時にクッキーファイルを即座に削除する必要がある場合は、フレームワークのネイティブクッキー管理メソッドを使用して手動で削除する必要があります。SDK はファイルを自動的に削除しません。

ゴールとサードパーティ分析

TrackConversion()

  • 📨 Kameleoon にトラッキングデータを送信します
このメソッドを使用して、特定の ゴール およびユーザーのコンバージョンを追跡します。このメソッドには visitorCodegoalId が必要です。さらに、このメソッドはオプションの TrackConversionOptParams.RevenueTrackConversionOptParams.NegativeTrackConversionOptParams.Metadata 引数も受け取ります。visitorCode は通常、実験をトリガーしたときに使用したものと同じです。 TrackConversion() メソッドは値を返しません。サーバーコールは非同期で行われるため、このメソッドは非ブロッキングです。
isUniqueIdentifier パラメータは非推奨です。代わりに UniqueIdentifier を使用してください。isUniqueIdentifier は、他のエッジケースのシナリオでも役立つ場合があります。たとえば、訪問者に元々割り当てられた匿名の visitorCode にアクセスできないものの、セッションマージ機能を使用して匿名訪問者に接続されている内部 ID にアクセスできる場合です。
引数
TrackConversionOptParams.Metadata の値は、生データのエクスポート結果ページ からアクセスできます。TrackConversionOptParams.Metadata パラメータが提供された場合、Kameleoon は、以前に AddData() メソッドを使用して収集されたものではなく、現在のコンバージョンに対してこれらの指定された値を使用します。パラメータが省略された場合、Kameleoon は同じ訪問内のコンバージョンの前に、これらの CustomData について最後にトラッキングされた値を使用します。Kameleoon は、TrackConversion() メソッドにパラメータとして明示的に渡されたメタデータ値のみを考慮します。以下の例では、Kameleoon はパラメータとして明示的に提供されたカスタムデータ値(ここでは、値が「Amex Credit Card」のインデックス 5)のみをコンバージョンに関連付けます。
例外

GetEngineTrackingCode()

Kameleoon は、Mixpanel、Google Analytics 4、Segment などのいくつかの分析ソリューションと統合されています。サーバー側の実験を正しく追跡するには、訪問者が実験をトリガーした後に GetEngineTrackingCode() メソッドを呼び出します。SDK は、前回の 5 秒間に訪問者がトリガーした実験の JavaScript キューコマンドを返します。このコードをページに挿入すると、Engine.js はコマンドを処理し、アクティブな分析統合を介して露出イベントを送信します。 このメソッドの実装の詳細については、ハイブリッド実験を参照してください。
  • この機能を使用するには、Go SDK と Kameleoon Engine.js の両方を実装します。このフローでは Engine.js はトラッキングにのみ使用されるため、閉じる </body> タグの前に非同期タグをインストールできます。
  • Kameleoon でのみ実験を追跡し、サードパーティの分析ツールに露出イベントを送信する必要がない場合は、JavaScript / TypeScript SDK を使用してください。このオプションは サーバーレスエッジコンピュートプラットフォーム に適しています。JavaScript / TypeScript SDK は、getVisitorCode を呼び出した際に、対応する実験割り当てを window.kameleoonQueue に追加していれば、自動的にバリエーションを追跡します。
  • 返されたトラッキングコードは HTML の <script> タグに直接挿入できます。
この例では、123456234567 は実験 ID、78908901 はバリエーション ID です。実装では、SDK が返されたトラッキングコードでこれらの値を生成します。
引数
戻り値

イベント

OnUpdateConfiguration()

OnUpdateConfiguration メソッドを使用すると、設定がデータを更新したときのイベントを処理できます。1 つの入力パラメータ handler を取ります。リアルタイム設定イベントを使用して設定が更新されたときに呼び出されるハンドラです。
引数

データ型

Browser

ここに保存される Browser データセットを使用して、関連する値で実験およびパーソナライゼーションレポートをフィルタリングできます。

Conversion

ここに保存される Conversion データセットを使用して、関連するゴールで実験およびパーソナライゼーションレポートをフィルタリングできます。
  • 各訪問者は複数の Conversion オブジェクトを持つことができます。
  • goalId は Kameleoon アプリで確認できます。
Cookie には、訪問者のデバイスに保存されているクッキーに関する情報が含まれています。
各訪問者は 1 つの Cookie しか持つことができません。2 つ目の Cookie を追加すると最初のものが上書きされます。

Geolocation

Geolocation には、訪問者の位置情報の詳細が含まれます。
  • 各訪問者は 1 つの Geolocation のみを持つことができます。2 つ目の Geolocation を追加すると最初のものが上書きされます。

CustomData

CustomData を使用すると、任意のタイプのデータを各訪問者に簡単に関連付けることができます。その後、セグメントのターゲティング条件として、または実験レポートのフィルター/ブレークダウンとして使用できます。カスタムデータの詳細については、こちらの記事を参照してください。
  • 各訪問者は、それぞれ一意の index ごとに 1 つの CustomData のみが許可されます。同じ index で別の CustomData を追加すると、既存のものが置き換えられます。
  • カスタムデータの「インデックス」は、カスタムデータダッシュボード の「INDEX」列で確認できます。
  • プライバシー上の理由から、選択したインデックスのデータを SDK が Kameleoon サーバーに送信しないようにするには、カスタムデータの作成時に このデータをローカルでのみターゲティング目的に使用する オプションを有効にします。
  • SDK インスタンスの設定が最新でない、または名前が登録されていない場合に、名前で作成された CustomData インスタンスを追加すると、データは無視されます。

Device

デバイスデータを使用して、関連する値で実験またはパーソナライゼーションレポートをフィルタリングできます。
NewDevice

OperatingSystem

OperatingSystem には、訪問者のデバイスのオペレーティングシステムに関する情報が含まれます。
NewOperatingSystem
各訪問者は 1 つの OperatingSystem のみを持つことができます。2 つ目の OperatingSystem を追加すると最初のものが上書きされます。

PageView

ページビューデータを使用して、関連する値で実験またはパーソナライゼーションレポートをフィルタリングできます。
リファラーのインデックスまたは ID は Kameleoon アカウントで確認できます。このインデックスは 0 から始まることに注意することが重要です。これは、特定のサイトに対して作成した最初の獲得チャネルには、1 ではなく 0 が ID として割り当てられることを意味します。
NewPageView
NewPageViewWithTitle

UserAgent

サーバー側の実験は、クライアント側の実験よりもボットトラフィックの影響を受けやすい傾向があります。Kameleoon はこの問題に対処し、既知のボットやスパイダーを認識するために、IAB/ABC International Spiders and Bots List を使用します。Kameleoon はまた、UserAgent フィールドを使用して、コンバージョン指標を歪める可能性のあるボットや他の不要なトラフィックを除外します。詳細については、ボットフィルタリングに関するヘルプ記事を参照してください。 内部ボットを使用している場合は、分析から除外するために、userAgent の値として curl/8.0 を渡すことをお勧めします。
NewUserAgent

UniqueIdentifier

訪問者に UniqueIdentifier を追加しない場合、visitorCode が一意の訪問者識別子として使用され、これはクロスデバイス実験に役立ちます。訪問者に UniqueIdentifier を追加すると、SDK はフラッシュされたデータを指定された識別子に関連付けられた訪問者にリンクします。 isUniqueIdentifier は固有の状況で役立つ場合があります。たとえば、訪問者に付与された匿名の visitorCode にアクセスできないものの、セッションマージを通じてその訪問者にリンクされた内部 ID を使用できる場合です。
NewUniqueIdentifier

ApplicationVersion

ApplicationVersion は、アプリケーションのセマンティックバージョン番号を表します。
訪問者は 1 つの ApplicationVersion のみを持つことができます。2 つ目のインスタンスを追加すると最初のものが上書きされます。
NewApplicationVersion

戻り値の型

DataFile

DataFile には、SDK 設定の詳細が含まれます。 クライアントが必要とする場合、追加情報で拡張できます。詳細が必要な場合は、カスタマーサクセスマネージャーにお問い合わせください。

FeatureFlag

FeatureFlag は、機能フラグ自体を定義するプロパティのセットを表します。たとえば、その VariationsRules、環境ステータス、その他の関連詳細などです。 クライアントが必要とする場合、追加情報で拡張できます。詳細が必要な場合は、カスタマーサクセスマネージャーにお問い合わせください。

Rule

Rule は、ルール自体を定義するプロパティのセットを表します。たとえば、その Variations などです。 クライアントが必要とする場合、追加情報で拡張できます。詳細が必要な場合は、カスタマーサクセスマネージャーにお問い合わせください。

Variation

Variation には、訪問者に割り当てられたバリエーション(または、特定の割り当てがない場合はデフォルトバリエーション)に関する情報が含まれます。
  • Variation オブジェクトは、割り当てられたバリエーションとその関連実験に関する詳細を提供します。一方、Variable オブジェクトには、バリエーション内の各変数に関する具体的な詳細が含まれます。
  • VariationID または ExperimentIDnil の場合(デフォルトバリエーションを示す)を処理するようにコードを設計してください。
  • バリエーションに変数が関連付けられていない場合、Variables マップが空になる可能性があります。

Variable

Variable には、割り当てられたバリエーションに関連付けられた変数に関する情報が含まれます。

非推奨メソッド

これらのメソッドは非推奨であり、SDK バージョン 4.0.0 で削除されます。

GetFeatureVariationKey()

  • 📨 Kameleoon にトラッキングデータを送信します
代わりに GetVariation() を使用してください。
このメソッドは、複数の機能バリエーションを持つ 機能実験 の設定を取得します。visitorCodefeatureKey を必須引数として提供することで、指定されたユーザーのバリエーションキーを取得できます。 ユーザーが機能フラグに関連付けられたことがない場合、SDK は機能フラグルールに従ってバリエーションキーをランダムに返します。ユーザーがすでに機能フラグに登録されている場合、SDK は以前のバリエーションキーの値を検出します。ユーザーがどのルールにも一致しない場合、Kameleoon の機能フラグ配信ルールで定義されたデフォルト値が返されます。デフォルト値はバリエーションキーではなく、機能フラグの設定に応じてブール値または他のデータ型である可能性があることに注意することが重要です。
コードで適切なエラー処理を使用して、潜在的な例外を処理することを忘れないでください。ガイダンスについては、サンプルコードを参照してください。
visitorCode を指定すると、GetFeatureVariationKey メソッドはそれを一意の訪問者識別子として使用します。これはクロスデバイス実験に役立ちます。visitorCode を指定して isUniqueIdentifier パラメータを true に設定すると、SDK はフラッシュされたデータを指定された識別子に関連付けられた訪問者にリンクします。
isUniqueIdentifier パラメータは非推奨です。代わりに UniqueIdentifier を使用してください。isUniqueIdentifier は固有の状況で役立つ場合があります。たとえば、訪問者に付与された匿名の visitorCode にアクセスできないものの、セッションマージを通じてその訪問者にリンクされた内部 ID を使用できる場合です。
引数
戻り値
スローされる例外

GetActiveFeatureListForVisitor()

代わりに GetActiveFeatures() を使用してください。
GetActiveFeatureListForVisitor() メソッドは visitorCode パラメータを受け取ります。特定の visitorCode でこのメソッドを呼び出すと、その visitorCode で利用可能な機能フラグキーのリストが返されます。 コードで適切なエラー処理を使用して、潜在的な例外を処理することを忘れないでください。たとえば、次のコードを参照してください:
引数
戻り値
スローされる例外

GetActiveFeatures()

代わりに GetVariations() を使用してください。
GetActiveFeatures() メソッドは、指定された訪問者コードに対して利用可能なアクティブな機能フラグに関する情報を取得します。 コードで適切なエラー処理を使用して、潜在的な例外を処理することを忘れないでください。たとえば、次のコードを参照してください:
引数
戻り値
スローされる例外

GetFeatureVariable()

  • 📨 Kameleoon にトラッキングデータを送信します
代わりに GetVariation() を使用してください。
ユーザーに関連付けられたバリエーションキーの 機能変数 を取得するには、SDK の GetFeatureVariable() メソッドを呼び出します。 このメソッドは、指定されたユーザーのバリエーションキーの変数を取得するために、visitorCodefeatureKeyvariableKey を必須引数として取ります。 ユーザーが機能フラグに関連付けられたことがない場合、SDK は機能フラグルールに従ってバリエーションキーの変数値をランダムに返します。ユーザーがすでに機能フラグに登録されている場合、SDK は以前のバリエーションキーの値を検出し、変数値を返します。ユーザーがどのルールにも一致しない場合、デフォルト値が返されます。 コードで適切なエラー処理を使用して、潜在的な例外を処理することを忘れないでください。ガイダンスについては、サンプルコードを参照してください。
isUniqueIdentifier パラメータは非推奨です。代わりに UniqueIdentifier を使用してください。isUniqueIdentifier は固有の状況で役立つ場合があります。たとえば、訪問者に付与された匿名の visitorCode にアクセスできないものの、セッションマージを通じてその訪問者にリンクされた内部 ID を使用できる場合です。
引数
戻り値
スローされる例外

GetFeatureVariationVariables()

代わりに GetVariation() を使用してください。
機能フラグに関連付けられたすべての変数を取得するには、GetFeatureVariationVariables メソッドを呼び出す必要があります。このメソッドには 2 つの必須引数 featureKeyvariationKey が必要です。このメソッドは、Kameleoon プラットフォームで定義された、オブジェクト型のデータを返します。 コードで適切なエラー処理を使用して、潜在的な例外を処理することを忘れないでください。ガイダンスについては、サンプルコードを参照してください。
引数
戻り値
スローされる例外

GetFeatureList()

SDK で現在利用可能な機能フラグキーのリストを返します。
戻り値