我正在使用 phonegap/cordova 2.0.0 开发一个 android 应用程序。
截至目前,我的服务器上托管了一个网站,而我的 android 应用程序只是用作包装器 webView。
这是我的java文件中的代码。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
webview = new WebView(this);
webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setPluginsEnabled(true);
webview.addJavascriptInterface(new JavaScriptInterface(), "jsinterface");
setContentView(webview);
// This is where I load the URL of my website
webview.loadUrl("http://192.168.0.109:3000/");
}
当我将应用程序部署到安卓手机时,它工作得非常好,我可以在手机中看到我的网站。
我现在面临的问题是使用 phonegap 插件,尤其是 ChildBrowser(其他插件给我同样的结果)。我的javascript控制台上抛出了这个异常:
window.plugins.childBrowser.showWebPage("http://www.example.com")
TypeError: Object #<an Object> has no method 'exec'
我按照有关如何使用插件ChildBrowser Plugin的说明进行操作
我已将 javascript 文件包含在我的服务器上托管的网站上
<script src="/assets/cordova-2.0.0.js" type="text/javascript"></script>
<script src="/assets/childbrowser.js" type="text/javascript"></script>
我花了几天时间试图弄清楚这一点,并在谷歌上搜索了我能尝试的一切。但是我没有运气,因为没有一个解决方案对我有用。我尝试了 deviceready 选项,但没有成功:
document.addEventListener("deviceready", yourCallbackFunction, false);
有没有人有解决方案,或者甚至可以从外部网站调用 phonegap 插件?
PS:我有一个 ChildBrowser 的工作示例,但我的 android 应用程序正在读取
super.loadUrl("file:///android_asset/www/index.html");