前端 - iPhone下Safari访问触屏站,下载APP,跳转AppStore和直接应用打开的问题。
大家讲道理
大家讲道理 2017-04-17 12:03:45
[iOS讨论组]

在开发网站的手机触屏站。
有这样一个需求:

对于iPhone手机访问触屏站,会提示下载该触屏站的App
若是手机里已有该应用,直接打开,没有的话就跳转AppStore去下载该应用。

在下厨房的触屏站上看到过这种实现,但通过PC开user-agent则没有下载提示。

求问实现方法。3Q~

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(1)
阿神

页首提示下载:

<meta name="apple-itunes-app" content="app-id=">

先声明一下这是12~13年的解决方案。

首先要在app里面注册相关的URI,及对应的路由处理,比如"helloworld://xxx/yyy/"

自动跳转式

if (/(iphone|itouch)/.test(navigator.userAgent.toLowerCase())) {
    window.location.href = "helloworld://xxx/yyy/";
    setTimeout( 
        function(){ 
            window.location.href = "";
            //你的APP store的地址
        }, 30);
    }
}

a标签式

<a href="helloworld://xxx/yyy/" onclick='setTimeout(function(){window.location.href = ""},30)'>你来点我呀来呀</a>
<!-- href=""里面填入APP store的地址 -->

解决方案比较hacky。hack的一点就在于,没有办法判断,只有让所有用户先后跳转到对应的分支里去。在safari里面,如果<a>的href属性是自定义的URI,且URI无人认领,并不跳转到相应页面,200毫秒以后setTimeout起作用;如果URI有APP认领,则跳到APP。
对于用户来说,虽然一部分体验很不好(弹窗提示错误),但起码所有用户都会到正确的页面去……

再次声明,这是12~13年的解决方案,如果今年年初冒出来更加美好优雅的解决方案就不可知了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号