カスタムタグ

カスタムタグとは、アプリから値を渡すカスタム変数のことです。変数の設定で Value comes from outside the app を選択すると、アプリは Adapty SDK を通じてその値を設定できます。たとえば、テキスト要素に「Coins:」とカスタムタグが含まれている場合、アプリがタグに「120」を渡すと、ユーザーには「Coins: 120」と表示されます。

カスタムタグを使用して以下を表示できます。

  • ユーザーの情報: 「DragonSlayer42さん、おかえりなさい!」のような挨拶でのユーザー名。
  • ユーザーが持っているもの: 連続ログイン日数やプレイヤーのレベル。
  • アプリが計算した値: 大容量パックの割引価格や、以前のフローでのユーザーの回答から計算したBMI。

値とフォールバック

アプリは各値をカスタムタグの名前で識別します。値は常に文字列です。Adapty は文字列をフォーマットしたり翻訳したりしないため、フローに表示する前にアプリ側で人間が読める形式に変換する必要があります。たとえば、“1250.0” ではなく “1,250” を渡してください。

以下の場合、ユーザーにはカスタムタグの初期値がフォールバックとして表示されます。

  • アプリがそのタグに値を渡していない場合。
  • ユーザーがアプリを値を渡すバージョンにアップデートしていない場合。
  • アプリのコード内の名前が、大文字・小文字を含めタグのフルネームと一致していない場合。
  • 同じテキスト要素内の別のカスタムタグに値がない場合。その場合、そのテキスト要素内のすべてのカスタムタグが初期値を表示します。

タグの位置に何も表示しないようにするには、空の文字列を渡してください。Adapty は空の文字列を値として扱うため、フォールバックは表示されません。

1. カスタムタグを作成する

  1. フロービルダーで Variables パネルを開きます。

  2. 新しい変数を追加します — をクリックします。

  3. 変数の Name を設定します。アプリのコードは大文字・小文字を含め、この名前を正確に参照する必要があります。

    • 使用できる文字: ラテン文字(A〜Z、a〜z)、数字、_、- が使えます。タグをグループに入れるには、user.streak のようにグループ名とドットで始めます。
    • 予約済みの名前: 大文字・小文字を問わず、PRICE、TITLE、VALUE、または TIMER_ で始まる予約済みの名前は使用しないでください。
    • 一意性: フロー内で重複しない名前を使用してください。
  4. (任意)変数を区別しやすくするために、Description フィールドに説明を入力します。ビルダーで変数名にカーソルを合わせると説明が表示されます。

  5. Initial value フィールドに、アプリから値が渡されなかった場合にユーザーに表示されるフォールバック値を入力します。

    • どのユーザーにも通じる言葉: 挨拶の username タグには friend と入力します。未認証ユーザーには「Welcome back, friend!」と表示されます。なお、初期値はローカライズできません。
    • 残高やカウントにはダッシュ: 未認証ユーザーに不正確な残高を表示しないよう、ダッシュ(—)を入力します。
  6. (String 変数のみ) Value comes from outside the app チェックボックスをオンにします。この操作は元に戻せません。また、Value Type が固定されます。

  7. Create variable をクリックします。

Create variable form with a name, a description, the String value type, and an initial value

変数はフロー固有です。別のフローでカスタムタグを使用するには、同じ名前で変数を作成してください。

変数をカスタムタグに置き換える

Value comes from outside the app チェックボックスは、変数を作成するときにのみ選択できます。変換済みのペイウォールからのカスタム変数など、通常のカスタム変数の代わりにアプリの値を表示するには、変数をカスタムタグに置き換えます。

  1. フロー内の変数とそのすべての参照を削除する。
  2. 同じ名前でカスタムタグを作成する。
  3. 変数を使用していた各テキスト要素にカスタムタグを挿入する。

2. テキスト要素にカスタムタグを追加する

テキスト要素を選択します。Content セクションで Add variable をクリックし、Custom タブでタグを選択します。

Custom tab of the Add variable dropdown with the streak tag in the user group

カスタムタグは条件付きテキストのすべての分岐に挿入できますが、if 条件では選択できません。

3. アプリから値を渡す

アプリのコードでは、各カスタムタグの正確な名前(グループを含む)を使用する必要があります。たとえば、user グループに streak タグがある場合、そのタグの正確な名前は user.streak です。

セットアップコードはプラットフォームによって異なります:

カスタムタグをテストするには、タグの値を設定するコードを追加した後、アプリでフローを開いてください。ビルダーのキャンバスおよびデバイスでのプレビューには初期値のみが表示されます。Adapty モバイルアプリはカスタムタグの値を設定しません。

制限事項

  • テキスト要素のみ: カスタムタグはテキスト要素にのみ挿入できます。以下には挿入できません:
    • Set variable アクション
    • Show alert アクション
    • Open URL アクション
    • 入力プレースホルダー
  • カスタムタグに条件は設定不可: カスタムタグを条件や条件付き表示で選択することはできません。アプリの値に基づいてユーザーが見る文章・要素・画面を決定するには:
    • 文章: アプリのコードで文章を組み立て、タグの値として渡します。例えば、coins_message タグの場合、コインを持つユーザーには “You have 120 coins”、それ以外には “Get your first coins” を渡します。
    • 要素と画面: カスタム属性として値を設定し、その属性から作成したオーディエンスに対して別のフローを表示します。
  • 開いているフロー内の値を更新するSDKメソッドはありません: フロー内でユーザーが入力した内容に基づいて結果を表示するには、BMIの例のように、結果を次のフローに渡してください。