当资源不是本地的(使用 http)时,不会触发 Cordova android 4.x 后退按钮事件

Posted

技术标签:

【中文标题】当资源不是本地的(使用 http)时,不会触发 Cordova android 4.x 后退按钮事件【英文标题】:Cordova android 4.x backbutton event not fired when resources is not local (using http) 【发布时间】:2015-10-31 12:29:24 【问题描述】:

它在我当前的 3.7.1 版本中工作,但是当我升级到 4.x 时,后退按钮不起作用,重现(使用非 http 源):

    cordova 创建测试

    cd 测试,更改 index.js :

    onDeviceReady: function() app.receivedEvent('deviceready'); document.addEventListener("后退按钮", function() 警报(“返回”); );

    ,

    cordova 平台添加安卓

    cordova build android

但如果 config.xml 被更改,例如:

再次重建,后退按钮没有提醒,我试图解决的问题:

    @index.html 添加 尝试使用 chrome 检查设备,没有错误,并且触发了设备就绪事件

有人可以帮忙吗?

谢谢

【问题讨论】:

【参考方案1】:

@polymerAngular, 我有一些演示应用程序,专门用于测试 Phonegap 事件。您可以成对或单独测试所有内容。后退按钮适用于 3.5.0。

所有事件:https://github.com/jessemonroy650/Phonegap-Events-test

返回按钮:https://github.com/jessemonroy650/Phonegap-PhysicalButton-test

@polymerAngular 的第二次响应

显然 Phonegap Build 不支持 Cordova 的 4.x。我已在 nitboi 上的此论坛帖子中要求 Phonegap 支持进行验证和澄清

需要对 phone-gap-version 进行验证和澄清http://community.phonegap.com/nitobi/topics/need-verification-and-clarification-on-phone-gap-version?rfm=1

他们回复后我会更新。

TIA 杰西

【讨论】:

感谢您的努力,我想我使用的是cordova CLI而不是phonegap,或者它是同一个来源? 好的。支持回应。答案表明版本控制不是问题。这意味着您可以使用我的代码,只需进行一次更改。将 config.xml 从 www 目录移动到项目根目录。然后 IT 应使用 Cordova CLI 和 Phonegap CLI 进行构建。 --- 关于您关于 Cordova 与 Phonegap 的问题。 PG FAQ。简短的回答是,Phonegap 作为 Cordova 捐赠给了 Apache.org。现在,Cordova 被 Phonegap、Ionic、Sencha Touch 等用作代码库。 为了清楚起见,请使用我的代码来查找您的问题。因为我的代码正在运行、经过测试并且免费提供。祝你好运。 抱歉忘了问,您的代码中没有 ,我使用后退按钮遇到的问题是 http 某处的内容 src,它运行在 android 本地运行时很棒 @polymerAngular,从我读到的关于 HTML 元素 的内容来看,它是一个Shadow DOM component。我不希望它与那个 webview 库一起工作。它可能与crosswalk 一起使用,但您需要move to cli-5.1.1。另外,我对这个 HTML 元素没有任何经验;这是我第一次听说这个。

以上是关于当资源不是本地的(使用 http)时,不会触发 Cordova android 4.x 后退按钮事件的主要内容,如果未能解决你的问题,请参考以下文章

浏览器缓存策略

HTTP 缓存策略

当 singleShot 为 True 时,QTimer 永远不会触发超时 [关闭]

本地通知触发时更改图标徽章编号

当应用程序在后台 iOS 11 中时,UNNotification 本地通知用户点击不会触发委托

按下后退时,EditText不会触发更改