精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

JS在微信、微博、QQ、Safari喚起App的解決方案

開發 前端
最近在做微信、QQ、微博中使用js喚起App,之前也做過類似的功能,不過比較粗糙,考慮的情況不太全,而且那已經是很久之前的事情了,很多技術都已過時,現在有體驗更好,功能更加完善的喚起技術,之前的很多的方案,到了現在都已是不太必要了,現在通過這篇文章分享給大家一個全面的、最新的喚起方案,希望對大家有幫忙。

背景

最近在做微信、QQ、微博中使用js喚起App,之前也做過類似的功能,不過比較粗糙,考慮的情況不太全,而且那已經是很久之前的事情了,很多技術都已過時,現在有體驗更好,功能更加完善的喚起技術,之前的很多的方案,到了現在都已是不太必要了,現在通過這篇文章分享給大家一個全面的、***的喚起方案,希望對大家有幫忙。

最終實現的效果

用戶點擊H5頁面的打開App或者下載按鈕(這個按鈕可能在一個下載入口頁、各種分享頁面的吸頂或吸底的banner),如果用戶已經安裝了App,則根據業務跳轉到相應的Native頁面;如果用戶沒有安裝該應用,則跳到AppStore或者應用市場去下載我們的App。

應用流程

首先所有的下載/喚起入口都是一個直接跳轉,應該是這樣:

 

  1. <a href="https://applink-party.mtime.cn/mtlf">下載</a> 

或者這樣:

 

  1. window.location.href = 'https://applink-party.mtime.cn/mtlf' 

所有的業務判斷都是mtlf這個頁面里面來做,這樣有兩個好處:

  • 多業務共用代碼。在一個團隊中,每個人的業務都可能有一個banner下載,沒有比location到一個url更簡單的調用方式了
  • 能夠利用universal link

簡單說下universal link

universal link的優勢

在iOS9之前,喚起方式和現在安卓是一個的,都是使用scheme進行喚起,這種方式有個小問題,每次喚起,都會給個提示:是否打開xx應用,這樣從體驗上來講,又讓用戶多一步操作。universal link會直接跳轉,不會在頁面做停留,條件就是在我們項目的根目錄,增一個apple-app-site-association.json文件,里面的內容大致是這樣:

然后iOS的App后臺再配置一下,就可以實現直接喚起了!

universal link配置

在H5端怎么才算配置成功了呢?只要我們某一個url在瀏覽器打開(不管是cdn地址,還是路由轉發),看到json文件的內容,H5這邊就算配置成功。然后把這個地址,給iOS老司機,和他們一說什么事,他們立刻就知道做什么,就這么簡單!

微信、微博、QQ、Safari在各平臺的喚起方案

喚起流程圖

 

經過長時間的實驗,總結了這張在各種情況下,喚起成功/喚起失敗的解決方案,我們接下來一個一個的說。

微信

微信是最重要的一種分享渠道,但是我們能夠做的,卻不多。之前,iOS下的微信支持universal link這種喚起方式,但是從2018年1月8日之后,微信把這個給屏蔽了!!!不管微信基于什么原因,把iOS下這種最便捷的喚起方式屏蔽,我們能做的只能是適應了。so,現在不管是iOS還是android,我們的處理方式是一樣的:都是直接跳到應用寶。iOS的應用寶會引導找開AppStore,android的應用寶會直接打開App(前提是你已經下載)

注:微信把itunes鏈接也屏蔽了,所以也沒辦法直接跳轉AppStore,只能借助應用寶來搭這個橋。

微博

微博目前還支持universal link喚起,我們只需要考慮未下載的情況。

  • 在iOS下,微博是不支持打開應用寶的鏈接,所以我們需要引導用戶使用Safari打開,像這樣:

  • 在android平臺下,使用scheme這種方式是喚不起App的,但是有特例,同樣是scheme,大人點評和網易云音樂就可以喚起,有空大家可以自己試試,所以我們可以推斷出,安卓平臺下的微博,也有類似微信一樣的白名單,在白名單內的,就可以使用scheme喚起,就像微信之于京東,京東在微信里面就是通過scheme方式喚起的。

so,不管是iOS還是android,我們的方案是:直接引導用戶使用本地瀏覽器打開。

QQ

  • iOS平臺下,QQ目前還支持universal link喚起,要是沒有安裝,QQ下也支持直接打開itunes鏈接,比較其他應用,QQ支持是***的。
  • android平臺下,QQ也支持scheme方式喚起,但是在一些老機型下,QQ會有一定的概率喚起失敗,具體的現象是:***次打開頁面,喚起失敗,再次打開,喚起成功。根據現象,我們可以推測出,在QQ的webview中,會對scheme的喚起方式做一些加載時間上的限制,經測試,大約在500ms,超過這個時間值,就會出現喚起失敗的情況。為什么第二次打開,喚起成功的概率會大,是因為***次加載時,已緩存了文件,第二次打開直接加載,這樣時間在限制之內。

Safari

Safari這種情況比較簡單,支持universal link,也支持直接打開itunes,so,如圖處理就可以了。

踩坑

  • 在iOS9中,Safari不支持直接跳轉itunes,so,這種情況需要做兼容處理,可以直接跳到應用寶
  • 之前看喚起是不是成功了,需要自己來計算時間,因為要是喚起成功了,setInterval的時間就會變慢,經我測試,已經用不到這種方法了,只需要使用document.hidden || document.webkitHidden就可以,兼容性還不錯
  • 判斷是不是Safari瀏覽器時,一般判斷都是UA中有沒有這個字符串,經測試發現,安卓的UA中,也包含Safari這個字符串(如下UA展示),所以需要加上操作系統的判斷
  • 關于Scheme喚起,之前有很多方案,比如:使用iframe、<a>標簽點擊、window.location...經測試,只要使用a標簽點擊,這樣兼容性***,代碼大約長這樣:

 

關于測試

兩個平臺,這么多情況,要一個一個測試嗎?當然要一個一個的驗證,但是在開發期間,沒有必要改一行,在手機上測試一下,這樣效率太低了,尤其是像一樣,選了一個安卓4.4的手機,絕對可以磨練你的耐心。為了提高效率,我把我常用到的UA分享給大家,這樣在Chrome模擬器里配置一下,就可以本地調試了,常用UA如下:

iOS-微信 

  1. Mozilla/5.0 (iPhone; CPU iPhone OS 11_2_2 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Mobile/15C202 MicroMessenger/6.6.1 NetType/WIFI Language/zh_CN 

iOS-QQ 

  1. Mozilla/5.0 (iPhone; CPU iPhone OS 11_2_2 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Mobile/15C202 QQ/7.3.5.473 V1_IPH_SQ_7.3.5_1_APP_A Pixel/1125 Core/UIWebView Device/Apple(iPhone X) NetType/WIFI QBWebViewType/1 

iOS-微博 

  1. Mozilla/5.0 (iPhone; CPU iPhone OS 11_2_2 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Mobile/15C202 Weibo (iPhone10,3__weibo__8.1.0__iphone__os11.2.2) 

iOS-safari 

  1. Mozilla/5.0 (iPhone; CPU iPhone OS 11_2_2 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Version/11.0 Mobile/15C202 Safari/604.1 

Android-微信 

  1. Mozilla/5.0 (Linux; Android 4.4.2; PE-TL20 Build/HuaweiPE-TL20; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/6.2 TBS/043807 Mobile Safari/537.36 MicroMessenger/6.6.1.1220(0x26060135) NetType/WIFI Language/zh_CN 

Android-QQ 

  1. Mozilla/5.0 (Linux; Android 4.4.2; PE-TL20 Build/HuaweiPE-TL20; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/6.2 TBS/043807 Mobile Safari/537.36 V1_AND_SQ_7.3.2_762_YYB_D QQ/7.3.2.3350 NetType/WIFI WebP/0.3.0 Pixel/1080 

Android-微博 

  1. Mozilla/5.0 (Linux; Android 4.4.2; PE-TL20 Build/HuaweiPE-TL20) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36 Weibo (HUAWEI-PE-TL20__weibo__8.0.2__android__android4.4.2) 

配置完成之后,就可以像我一樣,在電腦上切換環境啦:

源代碼以及庫文件使用,請參見:Github,用力點我

掃碼驗證

整個喚起流程,可以訪問這個下載入口:https://party.mtime.cn/download

也可以掃碼:

 

責任編輯:龐桂玉 來源: segmentfault
相關推薦

2015-04-10 17:00:15

百會強大微

2013-08-26 15:21:41

微博微信易信

2018-08-09 09:16:24

Vue微信簽名失敗

2015-08-27 18:51:31

微信硬件平臺

2015-08-07 15:32:19

歡迎界面仿微信仿qq空間

2013-08-19 14:46:00

微博微信催眠術

2020-09-07 14:00:23

騰訊微博微信互聯網

2013-12-27 15:28:20

微博微信

2015-08-27 10:11:45

微信硬件解決方案

2019-09-25 17:12:44

2013-09-13 13:35:41

微淘微信微博

2015-07-27 16:56:24

LinuxQQ

2020-07-01 07:45:55

數據安全印度刪除中國軟件

2019-11-04 14:15:33

微信iOS 13.2APP

2020-12-09 18:22:00

微前端微服務前端

2020-12-09 09:30:57

前端開發技術

2021-12-06 16:35:33

QQ微博社交軟件

2013-03-26 10:40:21

2020-12-18 10:29:06

人臉識別AI人工智能

2021-04-20 20:03:28

Systemjs模塊化前端
點贊
收藏

51CTO技術棧公眾號

亚洲一区三区视频在线观看 | 国产精品久久国产| 中文字幕在线观看高清| 欧美午夜精彩| 精品视频免费在线| 亚洲一区二区在线观| 一区二区三区午夜| 影音先锋成人在线电影| 精品少妇一区二区三区视频免付费| 国产在线观看欧美| 亚洲欧美强伦一区二区| 国产精品老牛| 精品国产一区二区三区四区| 国产精品美女久久久久久2018| 国产精品久久久久久久久久小说 | www.亚洲激情.com| 97成人超碰免| 亚洲精品乱码久久久久久久久久久久| 台湾佬中文娱乐久久久| 国产欧美一区视频| 91色在线视频| 欧美日韩精品区| 日本一区二区三区电影免费观看| 亚洲国产精品久久人人爱蜜臀| 欧美1o一11sex性hdhd| 亚洲av人无码激艳猛片服务器| 99国产精品一区二区| 日韩欧美国产精品| 精品久久久久久久免费人妻| 精品自拍一区| 91网站最新网址| 国产一区二中文字幕在线看| 麻豆changesxxx国产| 伊人久久大香线蕉综合网站| 欧美不卡一区二区| 91小视频在线播放| 日本精品另类| 一本到高清视频免费精品| 黄色成人在线免费观看| 免费av毛片在线看| 国产日韩精品一区二区三区在线| 久久国产主播精品| 懂色av蜜臀av粉嫩av分享吧| 国产伦精品一区二区三区视频青涩| 国产精品久久久久久久久久久新郎 | 日本va欧美va国产激情| 亚洲午夜在线| 久久6精品影院| 午夜爽爽爽男女免费观看| 欧美精品羞羞答答| 国产亚洲精品久久久久动| 黑丝av在线播放| 欧美日韩破处| 日韩精品极品视频| 三上悠亚ssⅰn939无码播放| 日韩极品在线| 亚洲欧美变态国产另类| 日韩免费高清一区二区| 国产精品高潮呻吟久久久久| 日韩欧美中文字幕一区| 久久黄色一级视频| 第四色在线一区二区| 亚洲国产成人精品一区二区| 在线播放国产视频| 久久久免费毛片| 亚洲国产天堂久久综合网| 风间由美一二三区av片| 亚洲精华一区二区三区| 一区二区av在线| 阿v天堂2014| 国产韩日影视精品| 欧美精品在线网站| 国产无遮挡又黄又爽| 中文一区二区| 国产精品久久91| 国产一区二区自拍视频| 国产精品中文字幕欧美| 国产一区二区三区黄| 香蕉国产在线视频| 国产日产欧产精品推荐色| 亚洲欧洲精品一区二区| 激情成人四房播| 亚洲一区二区三区美女| 人妻夜夜添夜夜无码av| 欧美一区久久久| 欧美日韩免费观看一区三区| 黄色片免费网址| 波多野结衣欧美| 亚洲欧美福利视频| 99热在线观看精品| 亚洲日本欧美| 国产精品综合不卡av| 国产精品玖玖玖| 成人av片在线观看| 亚洲狠狠婷婷综合久久久| 18videosex性欧美麻豆| 欧美日韩中文字幕日韩欧美| 日本特黄a级片| 91精品久久久久久综合五月天 | 欧美日韩国产精品专区| 激情综合网俺也去| 亚洲va欧美va人人爽成人影院| 日韩精品福利在线| 欧美性x x x| 国产日韩欧美| 91精品久久久久久久久| 污污视频在线免费看| 中文字幕在线不卡一区| 99精品在线免费视频| 久久精品一级| 亚洲无av在线中文字幕| 在线观看成人毛片| 蜜臀久久99精品久久久久久9| 国产欧美日韩在线播放| 麻豆视频免费在线观看| 一本一道久久a久久精品| 亚洲一区二区三区四区精品| 亚洲妇女av| 久久久久久久97| 亚洲综合精品视频| 26uuu国产电影一区二区| 青草全福视在线| 成人久久网站| 亚洲免费伊人电影在线观看av| 伊人在线视频观看| 日韩精品欧美成人高清一区二区| 动漫3d精品一区二区三区 | 一区二区三区播放| 久久精品视频在线免费观看 | 国产91丝袜美女在线播放| 精品999成人| 亚洲qvod图片区电影| 国产1区2区3区在线| 午夜国产精品一区| 在线中文字日产幕| 在线看片不卡| 成人精品一区二区三区| 国产福利在线视频| 色悠悠亚洲一区二区| 女同性恋一区二区三区| 欧美日韩综合| 亚洲一区二区三区视频播放| 日本不卡三区| 欧美唯美清纯偷拍| 色综合99久久久无码国产精品| 国产精品视频久久一区| 好吊色欧美一区二区三区四区| 先锋影音在线资源站91| 6080亚洲精品一区二区| 九九热久久免费视频| 欧美三级网页| 国产欧美日韩免费看aⅴ视频| 91激情在线| 在线日韩av片| 萌白酱视频在线| 精品亚洲成a人| 做爰高潮hd色即是空| 黄页免费欧美| 久久在线视频在线| 午夜老司机福利| 亚洲国产一区视频| 亚洲少妇18p| 国产精品综合| 日本一区二区久久精品| 成人看片网站| 中文日韩在线观看| 99久久精品免费看国产交换| 一区二区在线观看免费| 精品国产aⅴ一区二区三区东京热| 欧美 日韩 国产 一区| 成人羞羞视频免费| 阿v视频在线| 亚洲欧洲高清在线| 亚洲一区 中文字幕| 亚洲视频免费在线观看| 秘密基地免费观看完整版中文| 亚洲狼人精品一区二区三区| 久久综合九色综合网站| 国产极品一区| 欧美国产日韩在线| 五月婷婷丁香花| 欧美专区在线观看一区| 久久久久久视频| av一区二区三区黑人| 国产无套粉嫩白浆内谢的出处| 日韩精品欧美激情一区二区| 成人在线观看网址| 国产精品毛片久久久久久久久久99999999| 按摩亚洲人久久| 少妇又色又爽又黄的视频| 欧美亚洲国产一卡| 青娱乐在线视频免费观看| 久久麻豆一区二区| 一级日本黄色片| 国产日韩欧美一区二区三区在线观看| 日韩不卡av| 视频精品国内| 国产成人拍精品视频午夜网站 | 欧美极品少妇xxxxx| 欧美日韩在线中文字幕| 欧美日韩成人一区二区| 国产精品18p| 欧美高清在线一区二区| 美女黄色一级视频| 男女男精品视频| 久久国产精品网| 色爱综合网欧美| 蜜桃999成人看片在线观看| 国产一区精品二区| 国产精品观看在线亚洲人成网| 欧美亚洲天堂| 中文字幕亚洲欧美在线| 亚洲欧洲国产综合| 日韩一卡二卡三卡四卡| 欧美成人精品网站| 精品福利视频导航| 欧美丰满艳妇bbwbbw| 国产精品午夜在线| 国产精品无码久久久久久| 成人自拍视频在线观看| 天天操天天干天天做| 三级在线观看一区二区| 久久久性生活视频| 在线精品国产| 在线视频不卡一区二区| 欧美日韩国产在线观看网站 | 亚洲男人天堂久久| 欧美人体做爰大胆视频| 久久久精品毛片| 午夜久久久久久| 欧美成人综合色| 中文字幕亚洲一区二区av在线| 亚洲综合网在线观看| 99精品国产热久久91蜜凸| 亚洲国产日韩在线一区| 精品一区二区在线观看| 五月婷婷丁香综合网| 奶水喷射视频一区| 国产91对白刺激露脸在线观看| 伊人影院久久| 拔插拔插海外华人免费| 国产综合精品| 日韩欧美精品免费| 欧美三级黄美女| 日本大片免费看| 国内揄拍国内精品久久| 久艹在线免费观看| 在线日韩中文| 欧美成人三级在线视频| 在线精品福利| 国产91美女视频| 免费永久网站黄欧美| 日本一区二区黄色| 日日摸夜夜添夜夜添亚洲女人| 精品久久久久久无码国产| 媚黑女一区二区| 玩弄japan白嫩少妇hd| 久久青草久久| 自拍偷拍21p| 国产一区二区三区高清播放| 成人高清在线观看视频| 国产精品99精品久久免费| 91porn在线| www.久久精品| 大又大又粗又硬又爽少妇毛片| 91麻豆精东视频| 久久午夜福利电影| 国产精品久99| 免费在线看黄网址| 福利视频一区二区| 国模私拍一区二区| 69久久99精品久久久久婷婷 | 国产视频久久久久久久| 黄色在线视频观看网站| 日韩有码片在线观看| 麻豆av在线播放| 欧美亚洲在线观看| 国产欧美自拍| 99视频在线| 真实原创一区二区影院| 一区二区三区不卡在线| 欧美国产高潮xxxx1819| 亚洲 欧美 日韩 国产综合 在线| 久久香蕉精品| 国产精品igao网网址不卡| 不卡区在线中文字幕| 国产农村妇女精品一区| 洋洋成人永久网站入口| 国产免费一区二区三区四区五区| 欧美精品欧美精品系列| 日韩中文字幕免费在线观看| 国产午夜精品一区理论片飘花| 国产精品va在线观看视色| 7m精品福利视频导航| 黄色成人在线观看网站| 极品尤物一区二区三区| av伊人久久| 91动漫在线看| 九九视频精品免费| 精品夜夜澡人妻无码av| 国产精品二三区| 91精品国产乱码在线观看| 91.麻豆视频| 能在线看的av| 欧美老女人性视频| 韩日精品一区| 国产欧美日韩亚洲| 一区二区三区四区电影| 黄色一级大片在线观看| 成人午夜在线免费| 国产三级精品三级观看| 欧美午夜激情在线| 亚洲成人一二三区| 在线观看欧美视频| 筱崎爱全乳无删减在线观看| 99在线看视频| 99久久99视频只有精品| 成熟老妇女视频| 成人免费的视频| 青娱乐91视频| 欧美电影影音先锋| 18视频免费网址在线观看| 91国产美女在线观看| 免费一区二区三区在线视频| 亚洲精品白虎| 日韩精品一二区| 女人被狂躁c到高潮| 亚洲一区二区三区四区在线观看 | 永久久久久久久| 在线观看av一区| 男男激情在线| 2019精品视频| 国产伦乱精品| 国产一区二区四区| 国产成人综合网站| 全网免费在线播放视频入口| 精品视频色一区| 成人在线观看一区| 国产精品久久久av| 禁断一区二区三区在线| 国产视频在线视频| 国产亚洲欧美日韩在线一区| 欧美精品二区三区| 精品亚洲一区二区三区在线播放| jizzjizz中国精品麻豆| 1024在线看片你懂得| av成人动漫在线观看| jlzzjizz在线播放观看| 亚洲国产视频a| 黄片毛片在线看| 欧美日韩成人在线观看| 日韩欧美中文在线观看| 久久精品在线免费视频| 国产盗摄精品一区二区三区在线| 91人妻一区二区三区蜜臀| 制服丝袜亚洲播放| 亚洲图区一区| 国产高清一区二区三区| 日韩视频一区| 色欲av无码一区二区三区| 欧美性猛xxx| 国产一区二区影视| 国产精品网站大全| 欧美有码视频| 你懂的在线观看网站| 精品久久久国产| 黄上黄在线观看| 国产在线不卡精品| 欧美粗暴jizz性欧美20| 99精品一区二区三区无码吞精| 欧美日韩一区二区在线| 国产综合视频一区二区三区免费| 国产精品久久久久久av福利| 手机亚洲手机国产手机日韩| 一区二区三区国产好的精华液| 尤物在线观看一区| 亚洲欧美一区二区三| 国产精品久久久久久久久久免费 | 亚欧精品在线| 国产很黄免费观看久久| 日韩欧美大片在线观看| 国产亚洲精品美女久久久久| 亚洲资源在线| 大陆极品少妇内射aaaaa| 欧美国产日韩一二三区| 国产草草影院ccyycom| 国产69久久精品成人看| 日韩在线综合| 国产原创剧情av| 欧美亚洲国产怡红院影院| 91蜜桃在线视频| 看欧美日韩国产| 国产在线播放一区| 国产成人无码一区二区三区在线| 国产一区二区动漫| 综合激情网...| 网站一区二区三区| 亚洲超碰97人人做人人爱| aiai在线| 九九九九精品九九九九|