微信視頻是我在開(kāi)發(fā)一個(gè)微信網(wǎng)站的時(shí)候遇到的一個(gè)問(wèn)題,相信有很多人遇到過(guò),所以記錄一下,方便下次遇到類(lèi)似的問(wèn)題時(shí)可以快速排查。
根據(jù)客戶(hù)要求,一個(gè)頁(yè)面里的視頻要求不影響頁(yè)面加載速度,頁(yè)面加載以后就要播放,播放完畢以后要把視頻隱藏掉。覺(jué)得沒(méi)有啥問(wèn)題,就和客戶(hù)說(shuō)可以了,然后就可是寫(xiě)。
為了不影響網(wǎng)頁(yè)加載速度,使用了js把視頻video插入頁(yè)面,然后寫(xiě)了一個(gè)監(jiān)控,播放視頻,等視頻播放完畢,在把視頻隱藏,一切看起來(lái)很完美,本地測(cè)試也沒(méi)有問(wèn)題,線上測(cè)試也很好,可是發(fā)給客戶(hù)就不行了,頁(yè)面加載視頻不播放,點(diǎn)擊視頻播放直接全屏播放,而且播放過(guò)程中視頻還會(huì)遮擋到別的彈窗。和客戶(hù)溝通了半天,才知道客戶(hù)是直接在微信中打開(kāi)的,知道了以后直接先百度問(wèn)題,隨便找了一個(gè),用同事的果X看了一下,除了不能自動(dòng)播放,其他的都沒(méi)有問(wèn)題了,然后繼續(xù)上網(wǎng)找答案,偶然發(fā)現(xiàn)微信官方文檔里面說(shuō),視頻播放必須要點(diǎn)擊動(dòng)作才能觸發(fā)播放,無(wú)奈,和客戶(hù)溝通了一下,等待客戶(hù)反饋。結(jié)果是安卓手機(jī)全屏播放,會(huì)遮擋彈窗,蘋(píng)果手機(jī)已經(jīng)正常了。
說(shuō)到這的時(shí)候,有一點(diǎn)小奔潰了,查看了官方文檔《X5內(nèi)核視頻之問(wèn)答匯總》X5內(nèi)核視頻在用戶(hù)點(diǎn)擊后默認(rèn)會(huì)進(jìn)入全屏播放,前端可以設(shè)置video的x5-playsinline屬性來(lái)將視頻限定于網(wǎng)頁(yè)內(nèi)部播放,這個(gè)說(shuō)的很詳細(xì),
按照文檔處理了一下,用自己的安卓手機(jī)試了一下,沒(méi)毛病,同事卻反饋蘋(píng)果不行了。當(dāng)時(shí)就傻眼了,返回仔細(xì)看了一下文檔,才發(fā)現(xiàn)安卓和蘋(píng)果是有區(qū)別的,安卓用的是X5瀏覽器內(nèi)核,蘋(píng)果的不是,無(wú)奈,只好在js里加了一個(gè)判斷,判斷用戶(hù)手機(jī)是蘋(píng)果還是安卓的,分開(kāi)操作。再次測(cè)試,兩端都通過(guò)了,終于舒了一口氣。
代碼先貼出來(lái),寫(xiě)的比較糙,歡迎大家批評(píng)指點(diǎn)