移动端网页唤醒app

 

此处以君凯商联网(品质特产网站)为例

<a id="openApp"  >君凯商联网</a>

       许多移动端网站例如美团、京东等都会提示是否进入或下载app,或者是继续进行浏览网页版,用来提高app下载量,达到用户引流;

        实现原理是将浏览器协议直接更换为打开本地app的协议,找到匹配项app后开启;或者是在页面中创建iframe,将iframe的url更换为打开app协议;触发事件的同事创建时间对象,若在单位时间内如1s内打开则清楚iframe或关闭window,若在3s后仍未打开则判定为本地没有安装app,confirm前往是否下载

    

var ios_schema = "唤醒协议",
				ios_download_url = "https://itunes.apple.com/cn/app/idxxxxxxxx";
			var android_schema = "唤醒协议",
				android_download_url = "";
			document.getElementById("openApp").onclick = function(e) {
				if(/(Android)/i.test(navigator.userAgent)) {
					
					var ifr = document.createElement("iframe");
					ifr.style.display = "none";
					ifr.src = android_schema;
					document.body.appendChild(ifr);
					window.setTimeout(function() {
						document.body.removeChild(ifr);
//						if(confirm("检测到您手机可能没有安装app,您要前往下载君凯商联网app吗?")) {
							location.href = android_download_url;//打开app下载地址,有app同事提供
//						}
					}, 2000)

				}

				if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {

					var install = false;
					var loadTime = new Date();
					location.href = ios_schema;
					setTimeout(function() {
						var outTime = new Date()
						if(confirm("检测到您手机可能没有安装app,马上去苹果商店下载吧~ ")) {
							location.href = ios_download_url;
						}
					}, 2000)
				}

			}

 

      本人测试ios时,本地已安装app,但使用创建iframe无法唤醒,但直接将浏览器url替换即可唤醒,个人为找到解决方法,希望有大神帮助解答。

                                                                                                                                                     君凯商联网 - Alex.Ma

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页