【问题标题】:is there a way to tell if a web app was started from home screen icon? iOS/android?有没有办法判断一个网络应用程序是否是从主屏幕图标启动的? iOS/安卓?
【发布时间】:2011-09-22 06:40:26
【问题描述】:

有问题的应用是一本杂志,其行为类似于许多 iPad 杂志应用,但它是一个网页。我有一个微调器,它在初始查询设置期间运行,另外还有两秒钟的时间。

这在从网页启动网络应用程序时工作正常,但在保存到主屏幕后,其中 is 被正确缓存,它需要几乎两倍的时间才能响应,但微调器持续正常时间。

有没有办法判断应用程序是否是从主屏幕图标打开的,这样我就可以为微调器添加一些额外的“垫时间”,防止用户戳屏幕和诅咒可能会感到沮丧,并且可能删除应用?

可以在此处查看相关应用的示例:http://straathof.acadnet.ca/stacks/test1/

尝试为从网页移动的微调器/响应计时并将其保存到主屏幕并重新打开它以查看行为延迟...

任何帮助都将受到赞赏。

【问题讨论】:

    标签: jquery performance web-applications


    【解决方案1】:

    这可能会起作用,还有一个计时器可以在人们等待时添加更多消息。 detecting UIWebView with Javascript

    关闭微调器的修改代码在这里,源自上面的链接。微调器是用 spin.js 构造的...

    这可能需要在 ios5 之后进行修改,因为可能会解决由于慢 javascript 导致的延迟。

    $(window).load(function(){
       if (window.navigator.standalone == true) {
       //not in safari
            var timer = 10000; // longer timer for homepage icon
       } else { 
            var timer = 2500; // shorter time for safari   
                   }
    
        setTimeout ( function () {
              spinner.stop();
            $('#spinner').addClass('hidder').css('z-index','-10'); 
              updateOrientation;
        },timer);  
    });
    

    【讨论】:

      【解决方案2】:

      您可以在运行时从 JS 附加您的 url 地址查询字符串 ?is_cached=true,然后一旦用户将应用程序添加到主屏幕(或他的收藏夹),它将与查询字符串一起保存:)

      【讨论】:

      • 但是如果页面缓存在移动 safari 中(即:未保存到主屏幕),这是否会为微调器显示添加填充我发现 javascript 的运行方式有所不同移动 Safari 和主页图标 (UIWebView)。目前 UIWebView 没有加速。我将研究是否可以通过浏览器嗅探这个...
      猜你喜欢
      • 2011-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多