繁体   English   中英

Phonegap 3.3.0 inappbrowser的事件没有解雇

[英]Phonegap 3.3.0 inappbrowser' s events are not firing

我使用phonegap开发应用程序。 这个应用程序适用于一些apis所以,我必须使用inappbrowser插件。 但是在phonegap 2.9.x版本之后,插件的事件没有被触发。 您可以在此论坛上查看此问题https://groups.google.com/forum/#!topic/phonegap/e5_5unC2fYs

Apache有一个关于它的公告。 公告但它不是解决方案。 因为,当我尝试使用dreamweaver的phonegap时,我可以在Dreamweaver Build服务中选择phonegap 2.9版本,在Android 4.x设备上选择Inappbrowser事件。 所以,问题不在于Android版本。 问题是关于Phonegap版本。 对于一些sdks(admob,...)我必须使用eclipse。 我不能用命令行创建一个Phonegap 2.9版本的应用程序。 你有什么想法在创建应用程序时选择版本。 或者更改降级phonegap版本。 谢谢你的回答。

我自己没有测试过,但是如果你正在使用phonegap构建,你可以尝试以这种格式包含插件:

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

,以及记录:

<feature name="InAppBrowser">
    <param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser" />
</feature>
<feature name="InAppBrowser">
    <param name="ios-package" value="CDVInAppBrowser" />
</feature>

请参阅此页面了解插件详细信息

我在从2.9.0升级到3.3.0时遇到了一些麻烦,事实证明我以这种格式包含了我的插件:

<plugin name="InAppBrowser" value="org.apache.cordova.InAppBrowser" />

,由于某种原因没有用,当我使用格式我的插件再次开始工作。

希望这可以帮助。

事实证明,我的问题不是事件没有触发,而是我的回调代码中有一个错误(一个ReferenceError )。 由于此回调是InAppBrowser收到“loadstart”事件时要运行的第一个回调,因为第一个回调引发异常,所有未来的回调都没有运行,使得看起来InAppBrowser根本没有触发任何回调。

我发现这种方式实际上是通过手动评估weinre中的回调。

cordova.require('cordova/exec').nativeCallback('InAppBrowser115751764',1,
  {
    "url" : "http:\/\/example.com\/path",
    "type" : "loadstart"
  }
,1)

我通过查看详细的PhoneGap exec日志获得了上述代码片段。 您还应该能够通过检查cordova.callbacks对象来查找回调ID。

尝试安装cordova:

sudo npm install -g cordova

安装插件inappbrowser:

cordova plugin add org.apache.cordova.inappbrowser

现在运行:

phonegap run android

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM