Capacitor SDKでフロースクリーンビューを追跡する
ユーザーがフロー内のスクリーンを開くたびに、SDKはアプリへ flow_screen_showed イベントを報告します。このイベントをAmplitude、Mixpanel、またはご利用のプロダクトアナリティクスツールに転送することで、フロースクリーンのデータをアプリの他のイベントと合わせて分析できます。
フローのどの段階までユーザーが進んだかを確認するだけなら、コードは不要です — フローの指標でAdapty ダッシュボード上のビュー数、完了数、画面ごとの離脱率を確認できます。同じデータを独自のアナリティクスで利用したい場合や、Adaptyが把握していないイベントと組み合わせたい場合は、このガイドを参照してください。
始める前に
必要なもの:
- Adapty Capacitor SDK v4 以降:フローの分析コールバックは、それ以前のバージョンには存在しません。
- この機能リリース後に公開されたフローバージョン:Adapty はフローを公開する際にスクリーンイベントを生成するため、それ以前に公開されたフローではイベントが報告されません。アプリにイベントが届かない場合は、フローの新しいバージョンを公開して再試行してください。
受け取る内容
フローは、ユーザーがいずれかの画面を開くたびに flow_screen_showed を報告します。Adapty はこれらのイベントを独自のフロー分析でカウントするとともに、アプリにも配信します。これにより、自社の分析ツールで同じファネルを構築できます。
| パラメータ | 説明 |
|---|---|
instanceId | ユーザーが開いた画面の ID。 |
screen_order | フロー内での画面の位置。 |
is_last_screen | その画面に遷移先がない場合に true。分岐するフローは複数の異なる画面で終了する可能性があり、それぞれが true を報告します。 |
このイベントでは isBackendEvent と isCustomerEvent の両方が true です。Adapty はカウントを継続し、アプリにも配信されます。
スクリーンビューは、他のすべてのフローイベントと同じアナリティクスコールバックに到達します。登録方法については、フロー&ペイウォールイベントの処理を参照してください。
すべての画面表示をアナリティクスに転送する
同じコールバックからフローの他のイベントも報告されるため、何かを読み取る前にイベント名でマッチングしてください。
view.setEventHandlers({
onAnalytics(name, params) {
if (name === 'flow_screen_showed') {
const screenId = params.instanceId;
const screenOrder = params.screen_order;
// Send screenId and screenOrder to your analytics provider here.
}
return false; // keep the flow open
},
});
ユーザーが最後の画面に到達したときにコードを実行する
is_last_screen は、フローがそれ以上進めない画面で true になります。これを使ってコンテンツのアンロック、オンボーディングの完了マーク付け、または独自の完了イベントの送信を、ビルダーでボタンアクションを追加することなく行えます。
view.setEventHandlers({
onAnalytics(name, params) {
if (name === 'flow_screen_showed' && params.is_last_screen) {
// The user reached the end of the flow.
}
return false; // keep the flow open
},
});
フローの最後のスクリーンに到達することは、フローを閉じることとは異なります。ユーザーは最終スクリーンを表示してから何も操作せずにフローを閉じることができますし、分岐のあるフローは複数の異なるスクリーンで終了する場合があります。フロー自体が消えたことを知るには、代わりに onDisappeared を使用してください。