ios – PhoneGap的默认ChildBrowser插件示例:成功打开,但无法加载URL

我希望这是一个非常容易回答的问题,因为我似乎非常接近于让Childbrowser插件正常工作.我正在使用 Xcode 4.6.2和Cordova 2.7.0,试图创建一个运行通用Childbrowser示例的基本iPhone应用程序.

概观

让我回顾我到目前为止的步骤:

1)从这里下载Childbrowser插件https://github.com/phonegap/phonegap-plugins/tree/master/iOS/ChildBrowser
2)将所有.xib,.h和.m文件复制到Plugins文件夹.
3)将Childbrowser.js和index.html文件复制到www文件夹.
4)将Childbrowser.bundle复制到Frameworks文件夹.
5)修改了config.xml中的plugins节点,使其包含:

<plugin name="ChildbrowserCommand" value="ChildbrowserCommand" />

6)在运行认的Childbrowser示例时,我看到一个控制台警告,指出按钮代码已被弃用.所以我改变了这一行:

<button onclick="cb.showWebPage('http://google.com');">Click to open Childbrowser!</button>

对此:

<button onclick="cordova.exec(null,null,'ChildbrowserCommand','showWebPage',['http://www.google.com']);">Click to open Childbrowser!</button>

摘要

我能够毫无问题地构建应用程序,当我使用iOS模拟器(iPhone 6.1)测试它时,它似乎几乎可以工作.单击该按钮会触发Childbrowser,我可以在屏幕底部看到所有UI元素.但是,我只是看到“正在加载……”和一个微调器,而不是加载谷歌的主页.

检查控制台时,这是我得到的信息:

2013-05-15 06:01:34.934 HelloWorld[23234:c07] View did load
2013-05-15 06:01:34.936 HelloWorld[23234:c07] opening Url : INVALID

感觉很亲密!但无论出于何种原因,URL无效?不确定我是否错过了一个步骤,或者我是否在设置过程中做错了什么.我可以在模拟器中使用Safari来提升谷歌,所以我知道这不是连接问题.

任何帮助或见解非常感谢.我已经尝试过寻找解决方案,但还没有找到任何解决方案.鉴于我与此有多接近,似乎我忽略了一些非常小的东西?

干杯!

解决方法

你应该使用2.3.0中引入的phonegap标准的InAppbrowser插件
例:

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

phonegap docs here的详细信息

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...