Я начал разрабатывать html-приложения для нескольких платформ. Недавно я слышал о Cordova 2.0 (PhoneGap) и с тех пор, как мне было любопытно узнать, как работает мост. После многократного прохождения кода я увидел, что Exec.js - это код, в котором происходит вызов из JS → Native.
execXhr = execXhr || new XMLHttpRequest();
// Changeing this to a GET will make the XHR reach the URIProtocol on 4.2.
// For some reason it still doesn't work though...
execXhr.open('HEAD', "file:///!gap_exec", true);
execXhr.setRequestHeader('vc', cordova.iOSVCAddr);
if (shouldBundleCommandJson()) {
execXhr.setRequestHeader('cmds', nativecomm());
}
execXhr.send(null);
} else {
execIframe = execIframe || createExecIframe();
execIframe.src = "gap://ready";
Но хотите понять, как это работает, каково здесь понятие, что делает файл:///! gap_exec или gap://ready do? и как вызов прогневается на нижние уровни (нативные уровни кода)
благодарит кучу заранее.