【问题标题】:Cordova Android Back button event doesnt fireCordova Android 后退按钮事件不触发
【发布时间】:2015-04-26 03:25:56
【问题描述】:

它只是不火!我什么都试过了。有趣的是菜单按钮可以正常工作:

//...
//if (isDevice) {
    document.addEventListener("deviceready", onDeviceReady, false);
//}
//...
function onDeviceReady() {
    document.addEventListener("backbutton", onBackKeyDown, false);
    document.addEventListener("menubutton", onMenuKeyDown, false);
    //document.addEventListener("searchbutton", onMenuKeyDown, false);
}
function onBackKeyDown() {
    alert('Doesnt work!');
}
function onMenuKeyDown() {
    alert('Works just fine!');
}

虽然我现在有疑问,但我相信这周早些时候它正在工作! :/ 知道发生了什么吗?这是一个错误吗? 提前感谢您的帮助, 谢谢,咪咪


cordova -v: 4.3.0

测试于:Android 4.2.2

【问题讨论】:

  • 尝试在eclipse中通过logcat调试
  • 我猜可能是 javascript 错误。你是怎么找到这个 isDevice 的!!
  • 什么是isDevice?您使用的是什么版本的科尔多瓦?如果您可以提供这些信息,我将尝试重现该问题。
  • 大家好,感谢您的消息,isDevice 的使用是为了能够在浏览器中尽可能多地进行调试,并且它可以正常工作,正如我所说的菜单按钮工作正常(它使用相同的过程)但无论如何我在预生产期间使用 isDevice ,我现在将其删除,但它仍然无法正常工作。我会用你提出的所有信息更新问题。

标签: javascript android cordova mobile


【解决方案1】:

更新 Cordova、Android SDK 和 Build 工具彻底解决了这个问题!我猜cordova Build的工作方式有点混乱!看起来它每次都会拉一些存储库,而不管它们与其他依赖项的兼容性(甚至是它自己的版本)

虽然这个问题(以及与使用 google play store 应用程序而不是浏览器或应用程序内浏览器打开 Google play 商店链接有关的另一个问题)现在再次得到解决,但更新所有内容引入了一个新的奇怪问题!现在我不能做任何 AJAX 调用!有什么想法吗?!

PS:

为了记录,更新后你必须删除并添加android平台,否则你会得到很多奇怪的构建失败! :))

PS2

现在 back btn 可以工作,菜单按钮 不会触发任何事件!如此迷茫! :/

【讨论】:

    猜你喜欢
    • 2017-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    相关资源
    最近更新 更多