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