モバイルのレコード追加/編集後のイベント処理について

リファラーでやろうとしたところ、どうもレコード詳細画面のURLが必ず返ってくるようで断念。。

ということでstorageを使って以下のようにして前画面の状態を取るようにしました。

var storage = sessionStorage; //セッションストレージの準備

 //レコード編集画面表示時の処理
kintone.events.on('mobile.app.record.edit.show',function (event) {
  if (typeof sessionStorage !== 'undefined') {
          storage.setItem('mode','edit');
  } else {
    alert("本ブラウザではWeb Storageが使えません");
  }
});

 //レコード追加画面表示時の処理
kintone.events.on('mobile.app.record.create.show',function (event) {
  if (typeof sessionStorage !== 'undefined') {
      storage.setItem('mode','create');
  } else {
    alert("本ブラウザではWeb Storageが使えません");
  }
});

そして、レコード詳細イベントでこんな感じで処理を分けました。

kintone.events.on(‘mobile.app.record.detail.show’,function (event) {
var mode = storage.getItem(‘mode’);

if(mode === 'create'){ //追加画面から
     〜追加画面から遷移してきた時の処理〜
      storage.clear();
  }

  if(mode === 'edit'){ //変更画面から
     〜変更画面から遷移してきた時の処理
  }

  storage.clear();

});

これでとりあえずは動いてくれました。