【问题标题】:Android Cordova backbutton event Not triggeringAndroid Cordova 后退按钮事件未触发
【发布时间】:2017-05-09 23:54:09
【问题描述】:

我在我的 Android 应用中使用 Cordova(版本 6.3.2) 的“backbutton”事件。但是当点击后退按钮时,应用程序关闭而不是触发后退按钮事件。有很多类似的问题,但我不得不再次问,因为没有任何帮助。

我的初始化脚本:

  var cordovaInit = function (){

    //To bootstrap the app manually once the device is ready
    var receivedEvent = function (){
        angular.bootstrap($('body'), ['myModule']);
    };


    var onDeviceReady = function (){            
      console.log("Device Ready");
      receivedEvent('deviceReady');
      document.addEventListener("backbutton", function(e){
               // My Code here
      });
    };

    //call onDeviceReady when the device is ready
    this.bindEvents = function (){
        document.addEventListener('deviceReady', onDeviceReady, false);
    };

    //If cordova is present, wait for it to initialize, otherwise just try to
    //bootstrap the application.

    if(window.cordova !== undefined){
        this.bindEvents();
    }
    else{
        receivedEvent();
    }
  };

   $(function (){
     new cordovaInit();
   });

正如您在上面看到的,我在 deviceReady 事件之后注册了该事件,并且 deviceReady 事件工作正常。 很感谢任何形式的帮助。 提前致谢。

【问题讨论】:

  • 要检查此问题是否仅与backbutton 事件有关,我尝试添加volumeupbuttonvolumedownbuttonmenubutton。这些都不起作用。谁能帮我调试一下吗?

标签: android cordova back-button


【解决方案1】:

我认为可能发生的情况是您的应用只有一个屏幕,当按下后退按钮时它会退出应用。您需要防止默认的返回行为。尝试在后退按钮事件中添加这一行:

e.preventDefault();

【讨论】:

  • 感谢回复,我的问题是后退按钮事件本身没有触发。所以,它甚至没有进入 backbutton 事件回调函数。
【解决方案2】:

也有这个问题。对我来说,问题在于日食。当我使用 cordova 命令行构建应用程序并将 apk 下载到 Android 设备时,它运行良好。

在 Eclipse 中,我有其他项目使用以前版本的 Cordova。由于已经存在一个类 CordovaLib,Eclipse 没有从新项目中导入新的类,这是错误的。然后我编辑了新项目的属性 - 也错了! - 在“Android”下添加现有(旧)CordovaLib -> 库。

正确的做法是将新的 CorodovaLib 与项目一起导入,在导入时重命名(注意:在 Mac 上,您必须模糊名称字段以使 eclipse 识别重命名。如果单击“导入”而光标仍在在名称字段中,新名称在导入期间将被忽略)以避免与旧的 CordovaLib 类发生名称冲突。所以在项目的属性 -> Android -> 库中应该包含新版本的 CordovaLib。

【讨论】:

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