簡話h5喚起本地app

在沒接觸這個功能以前,查詢各類文檔後也只是似懂非懂,作過以後,發現其實很簡單,簡言之就是經過一個iframe或者a標籤來跳轉app端提供的URL schema(至於這個URL schema的組成格式,前端能夠不用管,若是確實想要知道,能夠自行百度),經測試用iframe標籤的兼容性比a標籤要好,故此處以iframe爲例前端

autoCallApp(scheme, btnLink) { // scheme:schema連接, btnLink:本地未安裝app時要跳轉的目的連接
const ifr = document.createElement('iframe');
ifr.href = scheme;
ifr.style.display = 'none';
document.body.appendChild(ifr);
const openTime = +new Date();
window.setTimeout(() => {
document.body.removeChild(ifr);
if (+new Date() - openTime > 2000) { // 若2s後執行的時間減openTime超過2s,則默認其啓動本地app失敗,跳轉到btnLikn (目前前端是無法知道h5喚起app是否成功的)
window.location.href = btnLink;
}
}, 2000);
}
PS:此種方法目前在瀏覽器、微信、qq、微博測試經過,在頭條app裏未生效(須要找頭條相關人士開個白名單)
相關文章
相關標籤/搜索