PhoneGap Deviceready将不会在第一次运行应用程序(iOS)时触发

时间:2013-12-20 16:47:19

标签: jquery ios cordova phonegap-plugins

我的应用程序遇到了一个奇怪的问题。

这是一个用户jQuery(不是jQuery mobile)的多页电话间隙应用程序。

安装后首次运行应用程序时,它会在索引页面上启动设备。

移动到其他页面后,设备不会再次开启。

如果我关闭应用程序并再次启动它,那么每件事都可以正常工作,并且每个页面都会启动设备就绪。

总结一下:deviceready将不会在索引以外的页面上的FIRST RUN OF APP(安装后)触发。

此外,我的手机插件插件在首次运行时均无效。

第一次运行应用后有哪些变化?这太奇怪了......

Ver:PhoneGap 2.9.0。

2 个答案:

答案 0 :(得分:1)

deviceready事件只会在您启动应用程序时触发一次。如果您从后台返回,那么您必须听取resume

当您在应用程序启动后在这些页面之间切换时,您可以执行.ready()之类的操作来处理加载特定页面的时间,如下所示:

$(document).ready(function() {
    // Do your stuff here
});

您可以阅读有关PhoneGap活动here的更多信息。

答案 1 :(得分:0)

好的,最后我了解到 PhoneGap和多个页面不能很好地结合在一起。所以我在一个页面中再次编写了该死的东西,并仅使用jquery mobile进行页面ajax缓存。在最后的结果我有更好的过渡和更快的应用程序:)。

所以我的提示是:如果您刚刚开始编写一个phonegap应用程序代码。使用单页结构,它将为您节省大量的调试时间。我也不建议过多地使用jquery mobile的功能,只需坚持页面过渡并使用常规jquery进行其余操作。

希望这有助于某人:)