アプリの滞在時間測定について

アプリの滞在時間を測定する最適な方法を教えてほしいです。

web上で勉強ができるアプリ制作を考えており、
アプリの滞在時間学習を進捗度合いの参考指標にする予定です。

発火はログインしたタイミングでいけそうですが、
終了時刻はアプリを完全に出ていったタイミングの測定ができず、困っています。。

最悪、JavaScriptで実装しようと思っていますので、
同じ場面に出くわし止む無くコードを書いた方でも参考になりそうなので教えて頂けるとありがたいです。

よろしくお願いします!

う~ん、Bubbleのデフォルトで「閉じたら」というWorkflowが無いのでおっしゃる通り難しいですね:sweat_smile:
これは要件定義の話ではありますが、~30分、~60分と制限しておいてその中で出来ることに集中しよう!みたいなサービス設計にするなら実装は可能かなと感じますがいかがでしょうか。
見せ方の問題ではありますが。

現状Bubbleの機能として、ブラウザを閉じた時に走るWorkflowというのはありませんね:eyes:

「いいね!」 1

ブラウザを閉じた時をキャッチするのは難易度が高いと思うので、ユーザーがアクティブになっている(Webアプリを開いている)時に繰り返し何かを書き込むというのはいかがでしょう?
Bubble単体で実装するのであれば、X秒おきにテーブルに時間を書き込むなどの処理が考えられるかと思います。
例えば、
user_activelogs
└user_id
└login_time
└active_time
└active
のようなdata typeを作成し、ログイン時間を記録しログイン1回あたりで滞在中ひたすらactive_timeをcurrenttimeで上書きしていく
というようなことをすると、後からactive_time-login_timeを計算することで、どれくらい使っていたか見ることができるというような形です。

他の方法としては、GAなどにユーザーごとに固有値を渡して測定という手段もありますが、測定結果をbubbleまで持ってくるのが難易度高めです。

「いいね!」 3

ありがとうございます。

結局滞在した時間=学習の進捗とするのが、本当にスキル習得しているのか?という点でもよろしくない気がしますね。。
制限時間の考え方、参考になります!
色々ありがとうございました!

ありがとうございます!
そして大変勉強になります!
しかし難易度が高そうなのと、対価として得られる機能にクライアントが満足しなさそうという気がしています。。

X秒おきにテーブルに時間を書き込むという方法は私も思い浮かばなかったので大変参考になりました。
別の機能を実装する時に約に立ちそうです!

「いいね!」 1