ios模拟器中的离线/在线事件

Posted

技术标签:

【中文标题】ios模拟器中的离线/在线事件【英文标题】:Offline/Online events in ios simulator 【发布时间】:2014-01-20 06:28:35 【问题描述】:

我有一个使用 angularjs 的 phonegap 3.3 应用程序。如果我在浏览器中运行应用程序,我可以监听“离线”和“在线”事件,但是当我使用 ios (7) 模拟器时,我会收到一些奇怪的事件序列,如下所示:

如果我关闭 wi-fi,我会在控制台中看到以下内容:

线下活动 线上活动

如果我随后重新打开 wi-fi,我会看到以下序列:

线下活动 线上活动 线下活动 线上活动

事件处理代码位于 app.js 中:

var app = angular.module('test', []);

app.run(function($window, $rootScope) 
    $rootScope.online = navigator.onLine;

    $window.addEventListener("offline", function () 
        console.log("OFFLINE EVENT");
        $rootScope.$apply(function() 
            $rootScope.online = false;
        );
    , false);
    $window.addEventListener("online", function () 
        console.log("ONLINE EVENT");
        $rootScope.$apply(function() 
            $rootScope.online = true;
        );
    , false);
);

【问题讨论】:

【参考方案1】:

PhoneGap 文档将这些事件作为 document.addEventListener。电池事件是我使用窗口看到的唯一事件。

http://docs.phonegap.com/en/3.3.0/cordova_events_events.md.html#online

【讨论】:

以上是关于ios模拟器中的离线/在线事件的主要内容,如果未能解决你的问题,请参考以下文章

iOS 中的离线地图

ios应用中的离线语音输入

模拟 HTML5 缓存测试的离线模式

关于 SAP Fiori 应用的离线使用

是否有适用于 iOS 的离线地理编码框架、库或数据库?

如何改进iOS App的离线使用体验