Android手動アプローチ
SDKの初期化
アプリ委任に次のコードを挿入します。
MMTApi api = MMTApp.getApi(context, "myapp");
                                                    
api.setSandbox(true);
myappをOracle Maxymiser UIのサイトの名前に置き換えます。
その後は最初に作成したAPIをMMTApp.getDefaultApi()で参照できるため、作成したAPIへの参照を保持する必要はありません。
ノート: ストア更新のないアプローチでSDKを初期化した場合は、APIを初期化する必要はありません。
キャンペーンの作成
Webサイト・テストのOracle Maxymiser UIを参照する現在のOracle UIドキュメントへのリンクが数多く用意されています。ここでモバイル・アプリ・テストの設定および保守も行います。
テスト用のキャンペーンの設定:
- Max Testキャンペーンを作成します。完全なドキュメントは、各場所(EU顧客の方はこちら、US顧客の方はこちら)のヘルプ・ガイドにあります。
 - アプリ・テスト用のOracle Maxymiser UIで作成されたページにキャンペーンをマップします。完全なドキュメントは、各場所(EU顧客の方はこちら、US顧客の方はこちら)のヘルプ・ガイドにあります。事前定義済ページにはアプリ・テスト用に設定された特別なプロパティがあるため、キャンペーンを他のページにマップしないようにしてください。
 - アプリケーション内でトラッキングするアクションを少なくとも1つ作成します。完全なドキュメントは、各場所(EU顧客の方はこちら、US顧客の方はこちら)のヘルプ・ガイドにあります。
 - ユーザー・エクスペリエンスのバリアントを含む要素を作成します。完全なドキュメントは、各場所(EU顧客の方はこちら、US顧客の方はこちら)のヘルプ・ガイドにあります。
 - ユーザー・エクスペリエンスの要素のバリアントを少なくとも1つ作成します。完全なドキュメントは、各場所(EU顧客の方はこちら、US顧客の方はこちら)のヘルプ・ガイドにあります。
 - バリアントの重みおよびコントロールを指定します。完全なドキュメントは、各場所(EU顧客の方はこちら、US顧客の方はこちら)のヘルプ・ガイドにあります。
 
次に例を示します。
背景色を変更し、どれがよりコンバージョン率が高いかを確認するとします。デフォルトは自動的に作成されるため、デフォルトに加えて、ユーザー・エクスペリエンスの2つのバリアントを作成します。デフォルト・バリアント(コントロール・バリアント)の背景は白です。
バリアント1の背景は緑色、バリアント2の背景は青です。
ここでは、バリアントの重みを設定する必要があります。
デフォルト: 50%
バリアント1: 25%
バリアント2: 25%
これは、すべてのユーザーの半数にはOracle Maxymiser UIの変更が表示されず、キャンペーンに参加しないことを意味します。4分の1のユーザーには緑の背景、別の4分の1のユーザーには青の背景が表示されます。
エクスペリエンスのフェッチ
次のコードでは、すべてのキャンペーンおよびそのバリアントをフェッチして、後で使用するためにキャッシュします。
// Show interstitial page
                                                    
MMTApp.getDefaultApi().fetchExperiences(new MMTApi.FetchExperiencesHandler() {
@Override
public void onExperiencesFetched() {
// Hide interstitial page and display Home page
}];
第1引数は、エクスペリエンスがフェッチされたら呼び出すハンドラです。このハンドラはメイン・スレッドで呼び出されるため、UIをこのハンドラ内で更新すると安全です。
ノート: レイテンシにより、表示するバリアントの詳細を含むOracle Maxymiserからのレスポンスの受信に短い遅延が発生する可能性があります。したがって、インタースティシャル・ページや検索用語/ログイン入力ページなど、アプリ内でユーザーが自然に遅延を経験する可能性がある場所でエクスペリエンスをフェッチすることをお薦めします。アプリの起動時点でエクスペリエンスをフェッチすることをお薦めします。
コンテンツ変換
エクスペリエンスがフェッチされたら、それらを使用してコンテンツを変換できます。コンテンツ変換を実装するには、2つの方法から選択できます。
| バリアント名 | バリアント・コンテンツ | 
|---|---|
| デフォルト | 空 | 
| Variant1 | 空 | 
| Variant2 | 空 | 
@Override
protected void onResume() {
    super.onResume();
    Experiences experiences = MMTApp.getDefaultApi().getExperiences();
    int color = Color.WHITE;
    if (experiences != null) {
        String variantName = experiences.getVariantName("Campaign", "View");
    if (variantName.equalsIgnoreCase("Variant1")) {
        color = Color.GREEN;
    } else if (variantName.equalsIgnoreCase("Variant2")) {
        color = Color.BLUE;
    }
    }
    View view = this.getWindow().getDecorView();
    view.setBackgroundColor(color); MMTApp.getDefaultApi().trackContentSeen("Campaign");
    }
                                                    重要: テストの停止またはパーソナライズ・ロジックの結果としてエクスペリエンスが変わる可能性があるため、UIがユーザーに表示されるたびにエクスペリエンスが適用されていることを確認してください。
バリアント・コンテンツ
コンテンツ変換はバリアント・コンテンツで記述できます。View要素のユーザー・エクスペリエンスのバリアントでは、次の例に示す形式を使用する必要があります。
| バリアント名 | バリアント・コンテンツ | 
|---|---|
| デフォルト | whiteColor | 
| Variant1 | greenColor | 
| Variant2 | blueColor | 
@Override
protected void onResume() {
        super.onResume();
        Experiences experiences = MMTApp.getDefaultApi().getExperiences();
        int color = Color.WHITE;
        if (experiences != null) {
        String variantName = experiences.getVariantName("Campaign", "View");
        if (variantContent != null) {
        color = Color.parseColor(variantContent);
        }
        }
        View view = this.getWindow().getDecorView();
        view.setBackgroundColor(color);
                                                    重要: キャンペーンからのコンテンツがユーザーに表示されるとき、[[MMTApp defaultApi] trackContentSeen: %CampaignName%]をコールしてOracle Maxymiserプラットフォームに通知する必要があります。
このステップを実行しないと、ユーザーがキャンペーンに参加することが認識されないため、レポートの正確性が失われます。
アクション・トラッキング
すべてのテスト・キャンペーンでは、ユーザー・エクスペリエンスの変更の影響をトラッキングできるように、販売へのコンバージョンのトラッキングなどのアクションが少なくとも1つ必要です。
次のコードを使用してアクションをトラッキングします。
MMTApp.getDefaultApi().trackAction("Purchase", 100, null);
                                                    
Oracle Maxymiserへの接続が使用できない場合、アクションはキャッシュされ、接続が再開すると送信されます。
パーソナライズおよびターゲッティング
デフォルトでは、すべてのアプリ・ユーザーがキャンペーンに含まれ、そのコンテンツ・バリアントがランダムに提供されます。または、キャンペーン・ターゲッティングを使用して、属性に基づいてユーザーに固有のバリアントを表示できます。この動作は、Oracle Maxymiserユーザー・インタフェースでセグメント・ルールを使用して定義されます。
セグメント・ルールの作成
- 新規セグメント・ルールを追加します。完全なドキュメントは、ヘルプ・ガイドにあります。
 - エクスペリエンスを使用して提供されるコンテンツを定義します。完全なドキュメントは、ヘルプ・ガイドにあります。
 
アプリでのカスタム・ユーザー属性の設定
カスタム属性が作成された後、次のコードを使用してユーザー属性を設定します。
[MMTApp setUserAttribute:@"AttributeName" value: @"AttributeValue"];
                                                    
ユーザー属性を設定または変更する際は、次のコードを使用して最新のエクスペリエンスをフェッチする必要があります。
// Show interstitial page
MMTApp.getDefaultApi().fetchExperiences(new MMTApi.FetchExperiencesHandler() {
        @Override
        public void onExperiencesFetched() {
// Hide interstitial page and display Home page
}];
                                                    重要: キャンペーンが稼働している間はエクスペリエンスをフェッチしないでください。これにより、ユーザーに複数のエクスペリエンスが提供されるため、レポートの正確性が失われます。