下記資料を参考にしてアプリを実行する機能を作りました。
PC版では動作するのですが、スマホでは動作しません。
mobileを付け、スマホ用のJavaスクリプトに登録しています。
(function() {
“use strict”;
kintone.events.on(‘mobile.app.record.detail.show’, function(event) {
// 画面上の取引先のID
var field\_check = event.record.取引先ID.value;
// スペースフィールド1にボタンを設置
var mySpaceFieldButton1 = document.createElement('button');
mySpaceFieldButton1.id = 'my\_space\_field1\_button';
mySpaceFieldButton1.innerText = '新規商談';
mySpaceFieldButton1.onclick = function () {
//関連レコードのアプリIDの取得
var related1 = kintone.mobile.app.getRelatedRecordsTargetAppId('商談履歴');
//関連レコードの新規作成画面のURLへのジャンプ
var new\_window1 = window.open("/k/" + related1 + "/edit");
new\_window1.addEventListener("load", function() {
window.postMessage(new\_window1.kintone !== null, location.origin);
});
window.addEventListener("message", (function() {
return function field\_set1() {
//新規レコード側のフィールドを指定してsetする
var new\_app1 = new\_window1.kintone;
var new\_record1 = new\_app1.mobile.app.record.get();
new\_record1.record.取引先ID.value = field\_check;
//新規で開いたkintone画面でルックアップ先の更新処理
new\_record1.record.取引先ID.lookup = true;
new\_app1.mobile.app.record.set(new\_record1);
window.removeEventListener("message", field\_set1, false);
};
})(), false);
}
kintone.mobile.app.record.getSpaceElement('my\_space\_field1').appendChild(mySpaceFieldButton1);
});
})();
ボタンは表示され、参照先アプリも起動しますが、取引先IDが入っていない状態です。
(PC版では取引先IDが入りルックアップも自動で実行します。)
理解できていない部分もあり、根本的にスマートフォンでは動作しないのかもしれませんが、
ご存じの方がおられましたらご指摘いただけないでしょうか。
よろしくお願いします。