リファラーでやろうとしたところ、どうもレコード詳細画面の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();
});
これでとりあえずは動いてくれました。