Android 2.1上的navigator.onLine是否存在已知问题?我在飞行模式下有Droid,但无论如何navigator.onLine似乎返回true。(我使用的是HTML清单文件来缓存页面,并且它的行为在脱机模式下的Mobile Safari和Firefox中可以正常工作。)
我正在构建一个移动HTML5应用程序,它将在在线和离线模式下完全正常运行.我想知道是否有人知道当应用程序离线时GA是否会跟踪交互?我已经读过GA确实会继续跟踪Android应用,一旦数据重新上线就会同步数据,但我还没有看到任何文档指明它是否也可以为HTML5应用程序执行此操作.
如果GA没有跟踪此信息,是否有人知道可以跟踪离线互动的任何其他分析软件包?谢谢!
我正在编写一个离线webapp,允许用户选择本地文件,修改它,而不是在本地保存副本.是否可以没有任何服务器(我可以上传文件并返回它的base64,但它不是很多离线)?应用只需要在谷歌浏览器上运行,所以也许我应该看看这里?
javascript offline google-chrome file-upload web-applications
特别是,可以使用PouchDB进行过滤复制吗?我想确保客户端不能省略过滤器,从而同步整个数据库.
我正在尝试创建单个文件HTML5文档,可以通过电子邮件发送给包含运行它所需的所有标记,js,css和图像的人.
我知道描述离线过程的文章,如http://diveintohtml5.info/offline.html,但是想知道嵌入其资源的最佳方法,如大图像和js文件.
我会为这些使用base64编码还是有更好的方法?
应用程序将在相当新的浏览器上运行.
我一直在iOS 7中使用MKMapView尝试设置并以编程方式获取缩放级别,以便在我离线时下载和重用地图图块.
因为我无法将整个地图下载到我的手机中,所以我只是按照适当的缩放级别下载了几个平铺,然后我修复了缩放级别并使用了思想MKTileOverlay和MKTileOverlayRenderer的平铺.
我尝试使用Troybrant的算法(http://troybrant.net/blog/2010/01/set-the-zoom-level-of-an-mkmapview),但它对我来说效果不佳.它无法正确建立缩放级别.
所以我创建了一个我自己的工作正常.
关于我自己的方法的一些解释:
在最大地图缩放级别(20),您将看到每个地图点的比例为1:1.整个地图将有256*2 ^ 20点.
在视网膜显示器中,在地图点和像素之间存在2.0比例因子.
Apple地图的缩放级别可以从3到19(最小和最大)不等
然后有一个简单的反向规则:
有了这些信息,我们的想法是设置MKMapView的visibleRect属性:
visibleRect width points = 2.0 * mapView.bounds.size.width * 2^(20-zoom)
Run Code Online (Sandbox Code Playgroud)
使用该公式,我已经能够将我的地图居中并适当地应用它们缩放级别.
正如Troybrant所做的那样,我使用以下方法创建了一个类别:
@interface MKMapView (ZoomLevel)
- (void)setCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate
zoomLevel:(NSUInteger)zoomLevel
animated:(BOOL)animated;
@end
@implementation MKMapView (ZoomLevel)
- (void)setCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate
zoomLevel:(NSUInteger)zoomLevel
animated:(BOOL)animated
{
MKMapPoint centrePoint = MKMapPointForCoordinate(centreCoord);
CGFloat rectWidth = 2.0 * self.bounds.size.width * pow(2, 20-zoomLevel);
CGFloat rectHeight = 2.0 * self.bounds.size.height * pow(2, 20-zoomLevel);
MKMapRect visibleRect = MKMapRectMake(centrePoint.x-rectWidth/2, centrePoint.y-rectHeight/2, rectWidth, …Run Code Online (Sandbox Code Playgroud) 我正在使用Xcode 7.2和Swift创建一个iOS应用程序,在这个应用程序上我显示我的网站的内容,但是如果我离线,内容将不会显示.所以我想缓存网页并显示离线.
在我宣布所有内容后,我使用以下代码:
var URLPATH="http://google.com"
let requestURL = NSURL(string: URLPATH)
let request = NSURLRequest(URL: requestURL!)
WB.loadRequest(request)
Run Code Online (Sandbox Code Playgroud) 我的应用程序目前使用webpack,angular js和服务工作者.
使用sw-precache插件创建我的服务工作者. https://www.npmjs.com/package/sw-precache-webpack-plugin
服务工作者缓存进展顺利,我可以看到我的静态资源是从chrome dev工具中的serviceworker.js中获取的.
现在,当我运行灯塔报告时,我仍然收到以下错误:
URL responds with a 200 when offline
Run Code Online (Sandbox Code Playgroud)
https://github.com/GoogleChrome/lighthouse
在我开启离线时的Dev工具中,我实际上可以看到我的页面加载.某些第三方脚本的控制台中的某些错误失败.这是没有得到网址响应200的原因,因为我有来自第三方的一些控制台错误,即示例错误:
GET https://fonts.googleapis.com/css?family=Roboto+Slab:300,400,700 net::ERR_INTERNET_DISCONNECTED
Run Code Online (Sandbox Code Playgroud)
这次审计到底要找什么,我该如何实现?
编辑:当我离线打开时,我添加了网络选项卡的图片,因为我说页面加载正常.我注意到我的sw.js是从磁盘缓存加载的,我在其他网站上没有注意到,所以可能是那里的东西.
这里还有sw.js的内容
'use strict';
var precacheConfig = [["/css/app.styles.77e2a0c3e7ac001193566741984a07f0.css","77e2a0c3e7ac001193566741984a07f0"],["/css/vendor.styles.582e79ead0684a8fb648ce9e543ad810.css","582e79ead0684a8fb648ce9e543ad810"],["/favicon.ico","70ef569d9a12f6873e86ed57d575cf13"],["/fonts/MaterialIcons-Regular.eot","e79bfd88537def476913f3ed52f4f4b3"],["/fonts/MaterialIcons-Regular.svg","a1adea65594c502f9d9428f13ae210e1"],["/fonts/MaterialIcons-Regular.ttf","a37b0c01c0baf1888ca812cc0508f6e2"],["/fonts/MaterialIcons-Regular.woff","012cf6a10129e2275d79d6adac7f3b02"],["/fonts/MaterialIcons-Regular.woff2","570eb83859dc23dd0eec423a49e147fe"],["/icons/launcher-icon-2x.png","91896b953c39df7c40b4772100971220"],["/icons/launcher-icon-3x.png","0aee2add7f56559aeae9555e495c3881"],["/icons/launcher-icon-4x.png","b164109dd7640b14aaf076d55a0a637b"],["/images/aa_logo_only.png","b5b46a8c2ead9846df1f1d3035634310"],["/images/developer.png","e8df747b292fe6f5eb2403c7180c31da"],["/images/facebook.png","8ab42157d0974099a72e151c23073022"],["/images/home-bg.jpeg","0a0f7da8574b037463af2f1205801e56"],["/images/logo.png","e8712312e08ca427d79a9bf34aedd6fc"],["/images/map.png","af3443ef4ab2890cae371c7a3de437ed"],["/images/pattern.png","114d593511446b9a4c6e340f7fef5c84"],["/images/twitter.png","99da44949cd33e16d2d551d42559eaf2"],["/index.html","1e9b5c4b3abba7e13d8d28c98cfb3bb5"],["/js/app.d9ada27616bf469d794d.js","8e2fc74de7d5c122ab8f0aca7e31b075"],["/js/vendor.d9ada27616bf469d794d.js","3bbba4569b6f3b88881b0533260905fe"],["/manifest.json","4bea29155995b63a9f2855637c0fe74c"]];
var cacheName = 'sw-precache-v2-45-' + (self.registration ? self.registration.scope : '');
var ignoreUrlParametersMatching = [/^utm_/];
var addDirectoryIndex = function (originalUrl, index) {
var url = new URL(originalUrl);
if (url.pathname.slice(-1) === '/') {
url.pathname += index;
}
return url.toString();
};
var createCacheKey = function (originalUrl, paramName, paramValue,
dontCacheBustUrlsMatching) {
// Create a new URL …Run Code Online (Sandbox Code Playgroud) 你好,我是一所工程师学校的学生,我想知道TTS(文本到语音)是否可以在Android的离线环境中工作。
我正在研究在Aurelia中构建渐进式Web应用程序的技术,其中包含适用于主流浏览器的离线功能.服务工作者似乎是资产缓存的首选选项,但在Safari(目前是Edge)中缺乏支持.如果他们不受支持,是否可以使用服务工作者回退appcache?如果有appcache清单和服务工作者安装,应用程序将如何运作?
offline web html5-appcache service-worker progressive-web-apps