Ios ChildBrowser Phonegap不工作

Ios ChildBrowser Phonegap不工作,ios,cordova,phonegap-plugins,Ios,Cordova,Phonegap Plugins,在寻找一种合适的方式在我的应用程序中打开浏览器后,我遇到了ChildBrowser,它似乎提供了我想要的一切。在完成了一些教程之后,我似乎无法让插件正常工作。我为外部主机编辑了PhoneGap.plist文件,值为“*”,在插件中添加了childbrowser命令,但每次运行应用程序时,单击链接时都不会发生任何事情。我在文件的开头有以下代码: <script type="text/javascript"> var childBrowser; function onB

在寻找一种合适的方式在我的应用程序中打开浏览器后,我遇到了ChildBrowser,它似乎提供了我想要的一切。在完成了一些教程之后,我似乎无法让插件正常工作。我为外部主机编辑了PhoneGap.plist文件,值为“*”,在插件中添加了childbrowser命令,但每次运行应用程序时,单击链接时都不会发生任何事情。我在文件的开头有以下代码:

<script type="text/javascript">
    var childBrowser;

    function onBodyLoad ()
    {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    //Phonegap ready to go
    function onDeviceReady()
    {
        alert("PhoneGap is ready");
        childBrowser = ChildBrowser.install();
    }

    function openChildBrowser(url)
    {
        try {
            window.plugins.childBrowser.ShowWebPage(url);
            //childBrowser.showWebPage(url);
        }
        cathc(err)
        {
            alert(err);
        }
    }

</script>

var儿童浏览器;
作用于车体负荷()
{
文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
}
//Phonegap准备好了吗
函数ondevicerady()
{
警报(“PhoneGap已准备就绪”);
childBrowser=childBrowser.install();
}
函数openChildBrowser(url)
{
试一试{
window.plugins.childBrowser.ShowWebPage(url);
//childBrowser.showWebPage(url);
}
cathc(err)
{
警惕(err);
}
}

我的phoneGap.js文件后面直接包含了ChildBrowser,但似乎无法让它运行,控制台中也没有记录任何错误。有人知道哪里不对,或者至少给我指出了正确的方向吗?

我的搭档写了一个逐步的教程,介绍了如何将ChildBrowser插件添加到PhoneGap Android项目中。

在花了数小时/数天的时间寻找许多关于这个主题的令人困惑的页面后,我终于找到了一套简明的说明。请务必获取最新的代码,如图所示。我成功地让ChildBrowser插件与运行在OSX 10.7.3中的Xcode 4.3中的PhoneGap 1.5.0配合使用,并在iOS 4和5中进行了测试。我发现的局限性是它只能在纵向模式下工作。我现在正在寻求一个包含横向模式的解决方案。

下面的代码适合我

<!DOCTYPE html>
<html>
<head>
    <title>My External Page</title>
    <meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, maximum-scale=1.0"/>
    <meta name="format-detection" content="telephone=no"/>

    <!--iPhone on Safari Standalone mode-->
    <meta name="apple-mobile-web-app-capable" content="yes" />

    <!--Hide iPhone on Safari Native Top Status Bar-->
    <meta name="apple-mobile-web-app-status-bar-style" content="default" />
    <link rel="shortcut icon" href="favicon.ico" />

    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />

    <script type="text/javascript" src="cordova-2.1.0.js"></script>
    <script type="text/javascript" src="childbrowser.js"></script>

    <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
    <script type="text/javascript" src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>

    <script type="text/javascript">

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

        function loaded()
        {
            if (console)
            {
                console.log("cordova loaded");
            }
        }

        function showExternalPage()
        {
            if (console)
            {
                console.log("in show pmt page");
            }

            Cordova.exec("ChildBrowserCommand.showWebPage", "http://www.google.com/" );
        }

        </script>

</head>

<body>

    <div data-role="page" id="myExternalLauncherPage" data-theme="a">

        <div data-role="content">

            <ul data-role="listview" data-inset="true">

                <li>
                    <button type="submit" data-theme="b" id="launcherButton" onclick="showExternalPage()">Launch Google</button>
                </li>
            </ul>

        </div>

    </div>

</body>

我的外部页面
文件。添加的监听器(“DeviceRady”,已加载,错误);
函数加载()
{
if(控制台)
{
控制台日志(“加载cordova”);
}
}
函数showExternalPage()
{
if(控制台)
{
控制台日志(“在显示付款页面”);
}
Cordova.exec(“ChildBrowserCommand.showWebPage”http://www.google.com/" );
}
  • 启动谷歌

我有一个使用facebook和childbrowser的测试项目,您可以在这里查看它以供参考,确保
/res/xml/plugins.xml
中定义,谢谢@dhaval的评论。我没有一个plugins.xml文件,这让我相信这可能就是问题所在。但是,我没有
/res/xml…
文件夹。当我创建文件时,我是否将其放在我的www文件夹的根目录中?来自Eclipse的Android项目已经有了
/res
文件夹,您只需要创建
/xml
并复制所需的xml文件
/res/xml
在项目的根目录中,而不是在
/www
@dvaval中,我正在使用ios项目谢谢链接,但我正在尝试让它在iphone/ipadOK上工作,我在您的问题中添加了ios标记。祝你好运