cordova-plugin-inappbrowser "message"イベントでネイティブ側で処理
非常に役に立つ"message"イベント。
これを使えばinappbrowser側でのイベントをひっかけてネイティブにもってこれる。
cordova側の処理。
this.Ref.addEventListener("message", function(event){
var type = event.type;
});
とても楽。
呼び出す側。
if (window.webkit && window.webkit.messageHandlers) {
var messageObj = {
"type": type
, "data" : data
};
var stringifiedMessageObj = JSON.stringify(messageObj);
webkit.messageHandlers.cordova_iab.postMessage(stringifiedMessageObj);
}
とても楽。
渡すパラメータはjsonにしてやるみたいでござるよ。
注意すべきはAndroid時の挙動か。
window.webkitはネイティブ側のonなんたらFinishイベントで捏造しているくさい。
document.readyとかでイベントはしらせたら多分はしらない。たぶんね。
(cordova_iabというオブジェクトを直で使えば動かせるかも)