在Android上重新启动/恢复应用程序时未触发deviceready事件

时间:2014-08-26 11:59:46

标签: android cordova

如果我在历史记录为空或主页按钮时使用后退按钮,我的应用程序将关闭。如果我然后启动/恢复应用程序,则调用document.addEventListener('deviceready',foo);永远不会让foo跑。

根据文档,对addEventListener的调用将在设备已经准备好的情况下导致立即调用事件处理程序。

然而,似乎并非如此。

为什么?

根据http://docs.phonegap.com/en/1.6.0/cordova_events_events.md.html,应该在处理程序中调用deviceready的addEventListener,但是当应用程序第一次启动时,这样的处理程序只会被调用一次。

无论我是使用后退按钮还是主页按钮关闭应用程序。

2 个答案:

答案 0 :(得分:0)

"一旦Cordova完全加载,Cordova deviceready事件就会触发。设备触发后,您可以安全地调用Cordova功能。"

我认为你正在寻找简历活动!否则,您可以封装eventhandler并将其触发到resume事件侦听器

答案 1 :(得分:0)

当您分别按下Android和ios中的后退按钮和主页按钮关闭应用程序时。如果您重新打开应用程序,应用程序将在后台运行,它会从后台切换到前台。

  • 当应用程序进入后台时,“暂停”事件会被触发。
  • 当应用程序从后台切换到前台“恢复”事件时 被解雇了。

如果你想再次“deviceready”事件被触发,你应该关闭/终止最近的应用程序,然后打开应用程序。