前提条件
開始する前に、いくつかのアカウントを作成する必要があります。- 無料の30日間の Kameleoon トライアルアカウントに サインアップ します。アカウント請求後30日以内にこのチュートリアルを完了する必要がありますが、チュートリアル自体は約30分程度で完了するはずです。
- GitHub アカウント。
サンプルアプリを実行する
最初に、GitHub Pages 上でアプリを起動するので、Web サーバーをセットアップする心配は不要です。GitHub アカウントにログインする必要があります。- GitHub の Bouncing ball リポジトリ で Fork をクリックします。プロンプトに従って、
github.com/<your_username>/bouncing-ballにサンプルアプリのフォークを作成します。(このチュートリアル全体で <your_username> を GitHub アカウント名に置き換えてください。) - GitHub の新しい
https://github.com/<your_username>/bouncing-ballリポジトリで、Actions タブをクリックし、ワークフローを有効にするボタンをクリックします。 - Settings タブで、Pages をクリックし、Source ドロップダウンをクリックして、GitHub Actions をクリックします。
- Actions タブで、Deploy static content to Pages > Run workflow > Run workflow をクリックします。
https://<your_username>.github.io/bouncing-ball でブラウザで実行中のデモアプリが見られるはずです。次のようになるはずです。

-
GitHub リポジトリの Code タブで、
src/main.tsファイルを開きます。 - Edit this file ボタン (鉛筆アイコン) をクリックします。
-
/src/main.tsファイルを見つけて編集します。次の行を見つけます。この行を次のコードに置き換えます。新しいコードはupdateIntervalが 1 の構成を追加します。この値は、SDK が構成の変更をポーリングする頻度を1分に1回 (デフォルトの60分から) に減らします。この頻繁なポーリングは、パフォーマンスへの影響のため本番環境では推奨されませんが、チュートリアルでは役立ちます。Kameleoon は、構成変更を SDK にただちにプッシュする プレミアムストリーミングオプション も提供しています。 - Commit changes… をクリックします。
Kameleoon プロジェクトをセットアップする
このセクションを開始する前に、Kameleoon トライアルアカウントのクレデンシャルが必要です。- トライアルアカウントのクレデンシャルを使用して Kameleoon アプリ にサインインします。
- 左メニューで、Admin を展開し、Projects > New project をクリックします。
-
ダイアログで、最初のドロップダウンの Site: Feature flags をクリックし、URL of site として
https://<your_username>.github.io/bouncing-ballを貼り付けます。<your_username>を GitHub アカウント名で置き換えるのを忘れないでください。Add をクリックします。 -
次のページに表示されているサイトコードをコピーします。

-
GitHub リポジトリの Code タブで、
src/constantsファイルを編集します。siteCodeの値を、今コピーしたサイトコードで置き換え、Commit changes をクリックします。
https://<your_username>.github.io/bouncing-ball)、すべてのバウンスする円が消えているのが分かるはずです。これは、円が別のプロジェクトの Kameleoon フィーチャーフラグによって追加されていたためです。サイトコードを変更したばかりなので、現在サイトはまだ完全に構成していないあなたの Kameleoon プロジェクトによって制御されています。心配は不要です。自分自身のフィーチャーフラグでアプリに自分の円を戻すことになります。
トラブルシューティング: Slow + Random + Big のテキストとバウンスする円がまだ表示されている場合は、インコグニート (またはプライバシーモード) ウィンドウでページを開いてみてください。
フィーチャーフラグをセットアップする
フィーチャーフラグを使用すると、新機能を限定されたオーディエンスに展開して、完全な展開の前に効果をテストできます。構成は開発者または他のチームメンバーによって管理できます。Kameleoon インターフェイスでフィーチャーフラグがどのように構成されているかを理解することで、アプリ内で変数を効果的に使用できます。- Kameleoon アプリの Activate メニューで、Feature flags をクリックします。
- New feature flag をクリックします。
-
次の値でフィールドを記入します。
- Name:
Bouncing ball demo - Project: {ドロップダウンからプロジェクトを選択}
- Flag type: Permanent
- Feature key:
bouncing_ball_demoタグと説明フィールドは空のままにできます。
- Name:
- Validate をクリックします。
変数をセットアップする
変数 は、アプリの動作を変更するためにアプリコードで使用する文字列、数値、ブール値、または JSON 値です。それらの値は、Kameleoon が訪問者に割り当てるバリエーションによって変化します。 たとえば、「Party time」バリエーションで訪問者にサービスを提供したときと「Hypnotize」バリエーションで提供したときに、訪問者がサイトに長く留まるかどうかを判断するには、各オプションのバリエーションをセットアップして実験を実行します。- 表示される新しいページで、Set Up メニューを展開して、Variables をクリックします。

-
+ Add Variable ボタンを使用して、次の値で 6 つの変数を追加します。
変数キー タイプ デフォルト値 title_text String Default variation: 1 green ball randomize_on_bounce Boolean False balls_amount Number 1 ball_speed Number 10 ball_color String green ball_size Number 20 - Save をクリックします。
バリエーションをセットアップする
バリエーション は、訪問者がアプリで何を見るかを制御する変数の可能な組み合わせを定義します。Kameleoon は、訪問者がアプリに初めて訪問したときにバリエーションを割り当てます。- Set Up で Variations をクリックします。
-
+ Add variation ボタンを使用して、2つの新しいバリエーションを追加します。
-
Name:
Party time- ball_size:
50 - ball_color:
random - ball_speed:
75 - balls_amount:
75 - randomize_on_bounce:
True - title_text:
Hey! Get up and dance!
- ball_size:
-
Name:
Hypnotize- ball_size:
200 - ball_color:
blue - ball_speed:
2 - balls_amount:
10 - randomize_on_bounce:
False - title_text:
You're getting very, very sleepy
- ball_size:
-
Name:
ゴールをセットアップする
次に、ゴール をセットアップします。ゴールは、バリエーションの効果をどう測定するかを定義します。 使用可能なカスタマイズ可能なゴールタイプには複数の種類がありますが、このチュートリアルでは基本的な「time spent」(滞在時間) 指標を使用します。- Set Up メニューで、Goals > + Add goal をクリックします。
-
Configure goals セクションで + Create a new goal をクリックし、次のフィールドに入力します。
- Name: Time spent
- Type: Time Spent
- Project: {自分のプロジェクトを選択}
- Next をクリックし、ゴールを The visitor spent more than 30 seconds に設定します。
- Validate をクリックします。
実験を展開する
バリエーションが構成されたので、オーディエンスのサブセットに対して2つのバリエーションを表示する実験を作成できます。1つのバリエーションを訪問者の40%に表示し、もう1つのバリエーションを別の40%の訪問者に表示します。残りの20%の訪問者は、アプリの未変更バージョン (デフォルト) を見ます。- Rollout Planner セクションで、Production をクリックします。
- + Add a rule > Experiment をクリックします。
- Exposure スライダーを 80% に下げます。
- Variations to serve の下で、Party time をクリックし、Exposition の値を 40.00% に変更します。
- + Add a variation をクリックします。バリエーション Hypnotize が自動的に選択されているはずです (そうでない場合は選択してください)。Exposition の値を 40.00% に変更します。
- ON/OFF トグルを ON に切り替えます。
- Save をクリックします。
アプリをテストする
ブラウザでアプリを開きます。3つの可能なバリエーション (Party time バリエーション、Hypnotize バリエーション、または Default バリエーション) のいずれかが表示されるはずです。
Party time バリエーション
Hypnotize バリエーション
Default バリエーションvisitorCode を保存するため、単純にページを更新しても、最初に割り当てられたバリエーションが常に表示されます。代わりに、新しい訪問者のように見える必要があります。それを行う最も簡単な方法は次のとおりです。
- 別のブラウザまたはデバイスに切り替えます。
- 毎回新しいプライベートウィンドウでアプリを開きます (選択したブラウザによっては「インコグニート」、「プライベートブラウジング」などと呼ばれることもあります)。
次のステップ
- 実験の Reporting セクションで、初期結果、利用可能な統合、アクティビティログのいくつかを確認します。トラフィックが少ないため、まだ多くの結果データにアクセスすることはできません。
- サンプルコードを確認して、変数がコードでどのように適用されているかを理解します。TypeScript を書くのに慣れている場合は、自分の変数を追加してみてください。
- この開発者ドキュメントと エクスペリメンテーションユーザーガイド の残りの部分を確認して、利用可能なすべてのオプションと機能について詳細を学んでください。
- 選択した SDK をインストールし、自分のフィーチャーフラグ、パーソナライゼーション、その他の実験の構築を開始します。