我试图让InAppBrowser从我的应用启动浏览器窗口。当我尝试在从Visual Studio运行的Android模拟器上使用我的代码时,浏览器按预期启动,但是当我将apk(通过Adobe PhoneGap构建)安装到我的Android设备时,我按下按钮并且没有任何反应。我已经确认该事件确实是通过设备上的alert()执行的,但浏览器并未打开。有什么想法吗?
HTML:
<div class="app">
<div>
<input type="button" id="launch" value="Launch browser to www.google.com!"/>
</div>
</div>
JS:
(function () {
"use strict";
document.addEventListener( 'deviceready', onDeviceReady.bind( this ), false );
function onDeviceReady() {
// Handle the Cordova pause and resume events
document.addEventListener( 'pause', onPause.bind( this ), false );
document.addEventListener('resume', onResume.bind(this), false);
document.querySelector('input#launch').addEventListener('click', launchGoogle);
};
function onPause() {
// TODO: This application has been suspended. Save application state here.
};
function onResume() {
// TODO: This application has been reactivated. Restore application state here.
};
})();
function launchGoogle() {
alert("launchGoogle()");
cordova.InAppBrowser.open("http://www.google.com", "_blank", "location=yes");
}
我尝试使用try语句打包我的电话并收到错误&#34; 无法调用方法&#39;打开&#39;未定义的&#34;。我认为这意味着InAppBrowser插件没有安装。
答案 0 :(得分:1)
原来问题是插件没有被加载。原因:插件没有被下载。
原来,PhoneGap Build没有下载插件。原因:PhoneGap构建需要www /目录中的config.xml,而不是Visual Studio原来的根目录项目目录。
将config.xml文件复制到www /目录修复了问题。