在Android上使用phonegap的儿童浏览器?

时间:2011-04-20 07:39:13

标签: android cordova

我无法让儿童浏览器在Android上运行。 我按照以下说明操作:https://github.com/brycecurtis/phonegap-plugins/tree/master/Android/ChildBrowser/

我已经安装了Eclipse以及编译所需的所有其他东西 应用程序和所有工作应该。 它在模拟器中运行,我也可以创建一个apk文件。

所以现在我正试图让儿童浏览器工作,如下所示。

  1. 我在工作区/ appname /中添加了childbrowser.java文件 src / com / phonegap / plugins / childBrowser /文件夹。
  2. 我的工作区/ appname / assets / www /中的childbrowser.js文件 夹。
  3. 我已链接到phonegap.0.9.4.js和childBrowser.js 我的索引文件中的文件。
  4. 我在清单文件中添加了这个
  5. >     <activity android:name="com.phonegap.DroidGap"
    > android:label="@string/app_name">
    >             <intent-filter>
    >             </intent-filter>
    >             </activity>
    
    1. 应该打开子浏览器的链接如下所示:
    2.    <a href="#" onClick="window.plugins.childBrowser.showWebPage("thewebpage.html");">Open</a>
      

      它仍然不起作用?我只是在模拟器中测试,因为我现在没有Android手机,是不是在模拟器中工作的儿童浏览器? 还是我错过了别的什么? 感谢。

4 个答案:

答案 0 :(得分:4)

我也使用phonegap.0.9.4.js,它对我有用。在PhoneGap JS抛出事件'deviceready'之后,childBrowser应该工作。所以我添加了以下代码。

var url="http://www.google.com";

document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
    window.plugins.childBrowser.showWebPage(url);       
}

一些提示,因为我也遇到了一些问题:

  1. 我下载的javascript文件是childbrowser.js,全部小写,不是childBrowser.js
  2. 确保在正确的文件夹中编译ChildBrowser.java。检查eclipse bin文件夹
  3. 对于外部网页,请使用前面的http://。
  4. Javascript与Android和iPhone不同。例如,在Android上,您不会调用ChildBrowser.install();因此,iPhone / Android / BlackBerry
  5. 的示例代码也不同

答案 1 :(得分:1)

尝试使用phonegap.0.9.5.js,如果您有任何问题请让我知道。我按照相同的链接工作正常。

答案 2 :(得分:1)

检查Eclipse的BuildPath。

某些Eclipse版本在上下文敏感中有一个Build Path条目,右键单击文件/文件夹,有些你必须转到根文件夹,右键单击并选择'Properties',选择'Java Build Path' ,然后选择“来源”标签。

验证您的src文件夹包含“全部”,并且它的子文件夹和ClassBrowser.java文件不会被排除。

此外,创建或打开res / xml / plugins.xml文件并在源模式下添加此行: <plugin name="ChildBrowser" value="com.phonegap.plugins.childBrowser.ChildBrowser" />

另请注意Aschwin的提示。

答案 3 :(得分:1)

更改:

a href="#" onClick="window.plugins.childBrowser.showWebPage("thewebpage.html");"

a href="#" onClick="window.plugins.childBrowser.showWebPage('thewebpage.html');"

双引号可能是阻止它工作的原因。我看到这是一个老帖子,但也许这会帮助其他人。