Cordova:InAppBrowser在Android模拟器上工作但在Android设备上没有

时间:2016-08-05 21:32:15

标签: android cordova cordova-plugins inappbrowser

我试图让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插件没有安装。

1 个答案:

答案 0 :(得分:1)

原来问题是插件没有被加载。原因:插件没有被下载。

原来,PhoneGap Build没有下载插件。原因:PhoneGap构建需要www /目录中的config.xml,而不是Visual Studio原来的根目录项目目录。

将config.xml文件复制到www /目录修复了问题。