通过手机浏览器打开APP或者跳转到下载页面的实现


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

<!DOCTYPE html>

<html xmlns:th="http://www.thymeleaf.org"><head><meta charset="utf-8" />

<title>文档标题</title>

</head>

<body>

    <p style="font-size: 68px;">

        <a href="javascript:open_or_download_app();">打开APP</a>

        <span id="device"></span>

    </p>

    <script type="text/javascript">

    //<![CDATA[

    function open_or_download_app() {

        var device = document.getElementById("device");

        if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {

            device.innerHTML = "ios设备";

            // 判断useragent,当前设备为ios设备

            var loadDateTime = new Date();

          // 设置时间阈值,在规定时间里面没有打开对应App的话,直接去App store进行下载。

            window.setTimeout(function() {

                var timeOutDateTime = new Date();

                if (timeOutDateTime - loadDateTime <2200) {

                    window.location = "xxxxxxxx"// APP下载地址

                } else {

                    window.close();

                }

            },2000);

             window.location = "apptest://apptest";  //ios端URL Schema

        } else if (navigator.userAgent.match(/android/i)) {

            device.innerHTML = "Android设备";

            // 判断useragent,当前设备为Android设备

            // 判断useragent,当前设备为ios设备

            var loadDateTime = new Date();

          // 设置时间阈值,在规定时间里面没有打开对应App的话,直接去App store进行下载。

            window.setTimeout(function() {

                var timeOutDateTime = new Date();

                if (timeOutDateTime - loadDateTime < 2200) {

                    window.location = "xxxxxxxx";   // APP下载地址

                } else {

                    window.close();

                }

            },2000);

             window.location = "apptest://apptest";  // Android端URL Schema

        }

    }

    //]]>

    </script>

    </body>

    </html>

Android 的 URL Schema 写成 “你设置的Schema://你设置的Schema” 即可访问。IOS 的和这个不同。URL Schema 的详解自行百度,你会有更深的理解。
根据参考,即使在后台打开了 APP,JS 仍会执行一段时间,大概是 600 - 1000 毫秒,所以至少也要设置定时调度大于 1 秒,这样比较有保证。

window.setTimeout(function() {},2000);  // 需要设置大一点,才有效果,否则会始终执行

接下来就可以打包 APP 安装到手机上进行测试,也可以删掉 APP,对比两次的结果。

IOS 的有条件再补上

以上就是通过手机浏览器打开APP或者跳转到下载页面的实现的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

怎样用meta标签代码让360浏览器默认使用极速模式打开网页

代码示例js实现浏览器打印功能

关于老版本的浏览器不兼容h5和c3的处理方法

js判断微信浏览器

html2 canvas实现浏览器截图

向html中插入视频并兼容所有浏览器的方法

哪些浏览器支持html5

td标签的border样式在浏览器不显示的解决方法

不支持css3的浏览器有哪些

h5新标签浏览器的兼容问题

更多相关阅读请进入《Firefox》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...