【问题标题】:Cordova 3.4.0 InAppBrowser Not WorkingCordova 3.4.0 InAppBrowser 不工作
【发布时间】:2014-02-27 17:15:19
【问题描述】:

我是 Cordova 和 JS 的新手,一直在为 Cordova 3.4.0 的 InAppBrowser 插件在 iOS (Xcode v5.0.2) 中工作而苦苦挣扎。

使用这些命令行命令成功构建了cordova项目:

cordova create InAppBrowserTest3-4 local.test InAppBrowser_Test3-4
cordova plugin add org.apache.cordova.inappbrowser
cordova platform add ios
cordova plugins
[ 'org.apache.cordova.inappbrowser' ]

www 配置文件包含:

<feature name="InAppBrowser">
    <param name="ios-package" value="CDVInAppBrowser" />
</feature>

只有这些额外的命令被添加到生成的 onDeviceReady 方法中来运行 InAppBrowser:

onDeviceReady: function() { app.receivedEvent('deviceready');

//added these lines below
    alert('deviceReady');
    var ref = window.open('http://apache.org', '_blank', 'location=yes');
    ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); });
    ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
    ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); });
    ref.addEventListener('exit', function(event) { alert(event.type); });
    alert('end deviceReady');
}

执行时,不会调用最后一个警报,也不会打开浏览器。类似的代码使用 Cordova 2.9.0 成功运行。

有人有什么建议吗?我已经阅读了几篇类似的帖子,但还没有找到解决方案。

【问题讨论】:

    标签: inappbrowser


    【解决方案1】:

    要解决此问题,请尝试以下操作:

    cordova create hello com.example.hello HelloWorld
    
    cd hello
    
    cordova platform add android
    
    cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git
    
    cordova build
    

    注意“cordova build”步骤,该步骤创建了platform/ios/www 目录,您可以在其中找到文件cordova_plugins.js 并正确安装了文件夹插件。

    【讨论】:

    • 这并不能真正回答问题。如果您有其他问题,可以点击 进行提问。一旦你有足够的reputation,你也可以add a bounty 来引起对这个问题的更多关注。
    • 谢谢!这成功了。 :-) 我为此苦苦挣扎,解决它真是太好了。
    【解决方案2】:

    我尝试手动将数据添加到platforms/ios/www/plugins/cordova_plugins,但每当我执行run ios 时,它都会被构建过程覆盖。对我有用的是 cordova platform remove ios 然后 cordova platform add ios

    这出现在我的 cordova_plugins.js 文件中:

    {
        "file": "plugins/org.apache.cordova.inappbrowser/www/inappbrowser.js",
        "id": "org.apache.cordova.inappbrowser.inappbrowser",
        "clobbers": [
            "window.open"
        ]
    },
    

    它一直呆在那里。现在可以正常使用了。

    【讨论】:

      【解决方案3】:

      我在云端使用PhoneGap 编译。我所做的是包括

      <gap:plugin name="org.apache.cordova.inappbrowser" version="0.2.4" />
      

      进入xml配置文件。确保您在其他 javascript 顶部的 cordova.js 包含在 index.html 中。应该可以的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-23
        • 2023-03-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多