从内部存储注入脚本到cordova inappbrowser

时间:2013-04-24 13:23:00

标签: javascript cordova phonegap-plugins inappbrowser

我们可以在Apache Cordova中使用它实例化一个Inappbrowser:

var ref = window.open('http://apache.org', '_blank', 'location=yes');

非常直接:)

现在,我想从 InAppBrowser 中加载的页面中的本地存储中注入一些脚本。

在cordova的 InAppBrowser.java我找到了这个方法:

private void injectDeferredObject(String source, String jsWrapper)

但不知道如何从科尔多瓦阿皮那里打电话:(

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

看起来这是允许使用ref.executeScript(details,callback)之类的新功能。它实际上是在这里记录的:https://github.com/apache/cordova-docs/blob/master/docs/en/edge/cordova/inappbrowser/inappbrowser.md#executescript但是看起来文档网站还没有更新。

当前构建的JavaScript版本似乎没有这个(只是搜索'executeScript',你会发现它不存在。看起来你可以尝试构建自己的JavaScript副本来测试它,因为桥接代码已经存在于repo:https://github.com/apache/cordova-js/blob/master/lib/common/plugin/InAppBrowser.js#L55中,并且正如您所指出的那样,已经有Java代码支持这一点(因此,它至少应该在Android上运行。)我不确定测试结果如何虽然支持此功能,但您可能会遇到一些问题。您应该尝试一下并告诉我们!

您可以在此处找到有关构建JavaScript的说明:https://github.com/apache/cordova-js