为了账号安全,请及时绑定邮箱和手机立即绑定

android端网页超链接调用native app为什么在QQ,UC浏览器内部打开了应用,Chrome没有任何问题

android端网页超链接调用native app为什么在QQ,UC浏览器内部打开了应用,Chrome没有任何问题

不负相思意 2019-02-22 01:22:06
上头给了一个需求,要通过一个网页的超链接启动本地app,但是在网上查了相关资料都是通过自定义URL Schemes协议来启动app,代码如下: //android端xml配置 <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="test" android:host="gw" android:pathPrefix="/open" android:port="8888"/> </intent-filter> //js代码: var t; var config = { scheme_IOS: 'appB://', scheme_Adr: 'test://gw:8888/open', download_url: "http://mb.sseinfo.com/ComInfoServer/ssegwappdownload.jsp", timeout: 600 }; function startApp(){ var startTime = Date.now(); if(isWeiXin()){ alert("请在浏览器中打开!"); }else{ var iframe = document.createElement("iframe"); if(checkOS()){ iframe.src=config.scheme_Adr; }else{ iframe.src=config.scheme_IOS; } iframe.style.display = "none"; document.body.appendChild(iframe); t = setTimeout(function() { var endTime = Date.now(); if (!startTime || endTime - startTime < config.timeout + 20) { window.location = config.download_url; } else { } }, config.timeout); window.onblur = function() { clearTimeout(t); } } } 那么问题就是,除了Chrome可以,在qq,UC浏览器中都会在浏览器内部启动app,在手机后台进程中并没有启动新的app,整个app界面直接是嵌入在浏览器
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 331 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信