よくある問題

この記事では、Flow & Paywall Builder でフローを構築する際に最もよく発生する問題を、原因と対処法とともにまとめています。

フローがプレビューまたは公開できない

3つのカードにまだプロダクトが設定されていないことを報告する「まだ公開できません」ダイアログ

フローをプレビューまたは公開しようとすると、次のエラーが発生することがあります:

メッセージ原因と対処法
No product selectedプロダクトカードにプロダクトが設定されていません。プロダクトを選択するか、カードを削除してください。
This product no longer exists、This offer no longer existsプロダクトまたはオファーがダッシュボードから削除されています。使用箇所で別のものを選択するか、Products パネルの Missing エントリにある Replace in N places を使って、画面上のすべての使用箇所を一括修正してください。
This product is off this screen、This offer is off this screenテキスト変数、条件、またはアクションが、画面のリストに存在しないプロダクトを参照しています(Products パネルで削除した場合など)。パネルでプロダクトを再追加するか、参照を編集してください。
Offer requiredoffer_price、offer_billing_period、または offer_full_duration が、オファーのないプロダクトで使用されています。プロダクトにオファーを設定するか、代わりに prod_* 変数を使用してください。
Product reference is invalidプロダクトの参照が不正な形式です。プロダクトを再選択してください。
Purchase action has no product to buyPurchase アクションにプロダクトが設定されていません(空のまま、または削除済みのカードを参照しています)。要素の Interactions タブで、Product をプロダクトまたは products.selectedProduct に設定してください。
Select product action has no product to selectSelect product アクションが参照していたカードが存在しません(削除された、プロダクトグループから移動された、または別の画面にあります)。要素の Interactions タブで、この画面上のカードを指定してください。
Flow has no screens、Screen ”…” has no elements空の画面にコンテンツを追加するか、削除してください。リモートコンフィグのコンテンツのみを持つフローはこの制限の対象外です。
Invalid interaction actionアクションが未完成です:URLのない Open URL、遷移先のない Navigate to screen、割り当てのない Set variable、Action ID のない Custom、タイトルもメッセージもない Show alert、要素が未指定の Show または Hide、Web Paywall URL のない Web 決済の Purchase。要素のインタラクションを開いて、アクションを完成させるか削除してください。
Missing navigation targetNavigate to screen アクションが削除済みの画面を参照しています。既存の画面を選択するか、アクションを削除してください。
Missing product target、Invalid product target、Product target on another screen、Ambiguous product target、Select Product inside a componentSelect product アクションが参照するカードが、削除された・プロダクトグループに属していない・別の画面にある・別の画面の要素と同じ要素 ID を持つ・すべての画面で共有されるフッターまたはヘッダー内にある、のいずれかに該当します。同じ画面のプロダクトグループ内にある、一意の ID を持つカードを指定してください。
Missing selectable group要素が存在しないセレクタブルグループを参照しています。再接続するか、グループを再作成してください。
Invalid visibility condition条件付き表示ルールが未完成です。条件ビルダーで完成させてください。
Missing Default Locale ContentOpen URL アクションに別のロケールの URL は設定されていますが、デフォルトロケールの URL がありません。Localizations パネルでデフォルト URL を追加してください。
Missing product reference古いフローが、画面に登録されていないプロダクトを使用しています。画面を開いて、Products パネルでプロダクトを追加してください。

ビルド中は定期的に Adapty アプリでフローをプレビューしてください。公開できないフローはプレビューでも表示されず、エラーメッセージで問題が確認できます。

Tip

フローが本番環境に対応しているか確認するには、flow-audit スキルを実行してください。公開エラーのチェックでは検出されない問題(機能しないボタン、ストアコンプライアンス、未完成のテキスト、翻訳の網羅性)を確認します。各問題について、レポートには該当要素とそのスクリーンが記載されます。

「Something went wrong」というエラーで詳細なしに公開が失敗する

公開失敗後の「Something went wrong」通知。サポートアドレスとコピー用のリクエストIDが表示されている

公開リクエストはAdapty側で失敗しており、フローの問題ではありません。ライブバージョンは変更されていません。数分待ってから再度公開してください。それでも失敗する場合は、通知に表示されている Request ID をコピーして support@adapty.io に送信してください。チームが失敗したリクエストを特定します。

購入時にオファーが適用されない

ビルダーが確認するのは、オファーが Adapty に存在しているかどうかだけです。割引が実際に適用されるかどうかは、購入時にストアが判断します。初回オファーはユーザーの適格性に依存し、App Store のプロモーションオファーには有効な In-App Purchase Key が必要です。どちらのケースも プロダクトと価格の不一致 で解説しています。

プレビューでオファー価格が空になる

ビルダーのプレビューはストアに接続できないため、offer_price、offer_billing_period、offer_full_duration は値の代わりに変数名が波括弧付きで表示されます。これらはSDKがアプリ内でフローをレンダリングする際に解決されます。オファータイプに依存する条件をプレビューするには、プロダクトとオファーのプレビューを参照してください。

16進数カラーの省略形入力後に公開が失敗する

カラーは必ず #FFFFFF のように6桁の16進数で入力してください。カラーフィールドは短い値も受け付けますが、自動的に展開されないため、#FFF のような省略形はSDKの設定に不正な形式で渡され、公開が拒否されます。不透明度は関係ありません——同じ値は不透明度100%でも失敗します。最もコストのかかる例外は4桁の値です。これは公開は成功しますが、意図していない色がレンダリングされます。

タイポグラフィの変更がエレメントの状態に反映されない

Selected などの状態に独自のタイポグラフィ設定がある場合、Default 状態のタイポグラフィを変更しても(別のテキストスタイルを適用する場合も含む)、その状態には影響しません。各状態のタイポグラフィは直接編集してください。

テキストスタイルを削除すると要素のスタイルが失われる

テキストスタイルを削除しても、そのスタイルを使用していた要素にその設定はコピーされません。削除後、それらの要素はデフォルトのタイポグラフィにフォールバックします。スタイルを削除する前に、影響を受ける要素を別のスタイルに変更するか、タイポグラフィを手動で設定してください。

要素の位置・サイズ・スペーシングのコントロールが表示されない

要素とそのコンテナの両方で Free 方向が設定されています。この場合、使用できる位置とサイズは Absolute のみで、幅と高さは固定されます。Adapty はそれ以外のコントロール(Position トグル、Spacing セクション、Fill および Hug オプション)をすべて非表示にします。コントロールを再表示するには、要素の Direction を Vertical または Horizontal に変更してください。

条件と変数が要素IDの変更後に機能しなくなる

条件やテキスト変数は要素IDで要素を参照しており、IDを変更しても参照は自動的に更新されません。参照が暗黙的に解決されなくなります。要素IDは参照する前に設定してください。変更が必要な場合は、すべての条件と変数の参照を新しいIDに合わせて更新してください。例外はプログレスバーのセグメントで、セグメント名を変更すると参照が自動的に更新されます。

条件または変数が空の値に解決される

変数ピッカーにはすべての画面のフィールドが表示されるため、条件やテキスト変数が、ユーザーがまだ入力していないフィールドを参照してしまうことがあります。実行時、そのような参照は空の値に解決されます。フロー内で前の画面で収集されたフィールドのみを参照するようにしてください。

ユーザーがアプリの値ではなくカスタムタグの初期値を見ている

ユーザーがカスタムタグの初期値を見てしまうのは、以下のケースです。

  • アプリが値を渡していない: フローを開くコードでそのタグの値を渡していないか、ユーザーがその処理を含むバージョンにアプリを更新していない。
  • 名前が一致していない: アプリのコード内の名前がビルダーのタグ名と異なっている。名前は大文字・小文字を区別し、グループ名も含む。たとえば、user グループに streak タグがある場合、タグの正確な名前は user.streak になる。
  • 同じテキスト要素内の別のタグに値がない: テキスト要素内のカスタムタグのいずれかに値がないと、その要素内のすべてのタグが Initial value を表示する。テキスト要素内のすべてのカスタムタグに値を渡すこと。

Adapty モバイルアプリはカスタムタグの値を渡さないため、プレビューには Initial values のみが表示されます。アプリが渡す値を確認するには、実際のアプリのビルドでフローを開いてください。

カスタムタグの場所に何も表示されない

以下の場合、カスタムタグの場所に何も表示されません:

  • アプリが空の文字列を渡している場合:Adapty は空の文字列を値として扱うため、初期値がフォールバックとして表示されません。初期値を表示するには、タグに値を渡さないようにしてください。
  • タグに初期値が設定されていない場合:アプリが値を渡さなかったときにフォールバックを表示するには、タグに初期値を入力してください。

Set variable アクションで選択中のプロダクトが変わらない

どのプロダクトが選択されているかは変数として割り当てられるものではないため、Set variable で選択を変更することはできません。代わりに Select product アクションを使用してください。

画像や動画がアップロードできない

フローとペイウォールビルダーのメディア制限外のファイルはアップロードできません。画像と動画の要件に照らしてファイルを確認してください。

要素フォーマット最大ファイルサイズその他の制限
画像.JPG, .PNG, .WEBP20 MB—
動画.MP4, .WEBM50 MB最大30秒、最小640×640ピクセル

以下のフォーマットはサポートされていません。

  • アニメーションGIFおよびアニメーションWEBP: モーションを追加するには、代わりにVideoエレメントを使用してください。
  • SVG: ファイルをPNGまたはWEBPとしてエクスポートしてください。アイコンの場合はアップロード不要です。IconエレメントがバンドルされたTabler Iconsライブラリから描画します。

フッターは縦スクロールが有効になっている画面にのみ表示されます。Screen settings > Scroll で縦スクロールを有効にしてください。