EPG开发《异常排查以及解决方案》
生活随笔
收集整理的這篇文章主要介紹了
EPG开发《异常排查以及解决方案》
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
【框架】?STB TV端全棧解決方案。Android、Linux、電信、移動(dòng)、廣電平臺(tái) https://shitaozhang.github.io/
【文檔】EPG 的全業(yè)務(wù)解決方案,擁有最新的 ES6\ES7 API、Preact、Mobx 而無(wú)需考慮其兼容性。同時(shí)包含所有常規(guī)功能、業(yè)務(wù)最佳實(shí)踐示例
【原文地址】
?
盒子與瀏覽器差異
- 盒子關(guān)機(jī)后 cookie 清空
- IPTV規(guī)范針對(duì) JavaScript 擴(kuò)展 API 不要通過(guò)閉包或 require 加載,出現(xiàn)接口無(wú)法訪(fǎng)問(wèn)問(wèn)題
- 安徽-海信-ZP906H 盒子全局 top 屬性作為 js 關(guān)鍵字。再次聲明或賦值操作為無(wú)效。盡可能不要使用該關(guān)鍵字 top
- 數(shù)碼視訊 Q5 小窗視頻會(huì)覆蓋所有元素背景圖片樣式;添加 背景圖片可能導(dǎo)致屏幕部分黑屏(圖片相關(guān)使用 img 標(biāo)簽)
- 創(chuàng)維 E900 返回簡(jiǎn)碼與其它盒子不一致 Key.Backspace2且隱藏視頻接口 this.mediaPlay.setVideoDisplayMode(255)無(wú)效
- APK 暴露的方法不要使用 let var 去定義 否則導(dǎo)致為空
- line-height 居中文字盒子展示有差異,使用 padding + font-size 代替 line-height 高度
- 部分盒子加載超長(zhǎng)圖片會(huì)失真模糊,瀏覽器自動(dòng)降低圖片分辨率進(jìn)行下載,解決方案拆分成多個(gè)
- 絕大部分盒子默認(rèn)背景色為黑色
- 烽火盒子背景圖片切換會(huì)閃動(dòng);使用 visibility 代替 display:none 方式來(lái)顯示圖片;Velocity.js 插件導(dǎo)致的兼容性問(wèn)題
- 播放影片部分可以播放 駐地網(wǎng)絡(luò) DHCP與 PPOE 可能導(dǎo)致網(wǎng)絡(luò)不一樣
- 烽火盒子 window.onkeydown 有時(shí)會(huì)失效推薦使用 document.onkeydown 還無(wú)法解決在頁(yè)面加載主動(dòng) window.focus() 該盒子對(duì)于已經(jīng)訪(fǎng)問(wèn)過(guò)頁(yè)面貌似會(huì)抽風(fēng),需要主動(dòng)激活
- 使用 Player 組建;創(chuàng)維中興 調(diào)用頻道播放直播流 A B 頁(yè)面頻繁切換時(shí)需注意 創(chuàng)建與播放 MediaPlayer 實(shí)例的間隔。可導(dǎo)致 無(wú)法播放問(wèn)題。解決方案。在 A B 頁(yè)面不要釋放播放器。可重復(fù)創(chuàng)建 MediaPlayer 實(shí)例
- 創(chuàng)維E8205 在 A 頁(yè)面創(chuàng)建播放器沒(méi)有釋放情況到 B 頁(yè)面進(jìn)行播放 這時(shí) Backspace 被系統(tǒng)阻止.釋放播放器后可恢復(fù)該異常
- ES5 特性不要使用 default 導(dǎo)出 低版本內(nèi)核實(shí)現(xiàn) default 會(huì)報(bào)錯(cuò),比如IE 8及以下也可使用下面一條處理方式
- 生成 ES5 代碼時(shí)由于盒子環(huán)境不支持部分 ES5 標(biāo)簽因此需要我們轉(zhuǎn)換為 ES3 webpack 配置 es3ify-loader 加載器可解決這個(gè)問(wèn)題
- 不可使用 a 標(biāo)簽,除非你完全清楚他在不同盒子的表現(xiàn)。通常 a 標(biāo)簽是默認(rèn)的且可受 按鍵操控(移動(dòng)、確認(rèn)) 大部分情況下這個(gè)并不是我們需要的
- 盒子調(diào)試可配置 ie8 環(huán)境。該環(huán)境都能正常運(yùn)行基本可保證盒子可運(yùn)行。目前 4k 盒子比 ie8 兼容還要好一些比如 ie8 中報(bào)錯(cuò)的 Object.defineProperty 在盒子基本能正常運(yùn)行
- 烽火盒子對(duì) BUG 絕對(duì)敏感,遇到烽火盒子不能運(yùn)行其他盒子可以運(yùn)行情況,最佳方式抓 ADB 日志。絕大部分可能性是程序運(yùn)行時(shí)調(diào)用到空對(duì)象(大部分盒子會(huì)忽略這種錯(cuò)誤))
- 本地可以訪(fǎng)問(wèn),盒子API報(bào)錯(cuò),通常IP段分內(nèi)網(wǎng)外網(wǎng),盒子是內(nèi)網(wǎng) PPEOP 撥號(hào)基本是內(nèi)網(wǎng),查看配置文件 是否處理動(dòng)態(tài)匹配API域名
- 盒子播放直播串切小屏切換全屏或者全屏切換小屏?xí)?dǎo)致視屏源丟失;需要重新調(diào)用播放;播放頻道號(hào)不存在這個(gè)問(wèn)題
- 播放器通常放在頁(yè)面加載處實(shí)例化,以保證全局僅實(shí)例化一次。
- 播放頻道需要使用 Number 進(jìn)行類(lèi)型轉(zhuǎn)換,不然有可能存在潛在問(wèn)題
- 多個(gè)頁(yè)面操作播放頻道時(shí),最好先調(diào)用離開(kāi)頻道方法,再掉進(jìn)入頻道,否則部分盒子導(dǎo)致頻道播放黑屏
- 安徽天翼盒子不支持調(diào)頻道號(hào)進(jìn)行播放(或者該賬號(hào)不支持當(dāng)前所播放頻道。可以在頻道太直接進(jìn)入頻道進(jìn)行判斷,該頻道在當(dāng)前環(huán)境是否正常)
- 烽火 HG680-J 調(diào)用 joinChannel 傳入空頻道號(hào),會(huì)導(dǎo)致盒子重啟。解決方案進(jìn)行判斷再調(diào)用
- 創(chuàng)維 E910
- 帶有 bottom 屬性元素消失,考慮盒子對(duì)于該屬性解析失效,推薦采用 top 設(shè)置樣式
- 剛創(chuàng)建的播放器不需要調(diào)用 leaveChannel 部分盒子可導(dǎo)致異常
- 播放頻道號(hào)數(shù)據(jù)源為空導(dǎo)致異常重啟(直接進(jìn)入頻道看是否正常播放)
- 華為盒子對(duì)于渲染引擎與JS解釋器切換不夠直接。直接追加元素在通過(guò)父元素獲取可能為空,可在獲取代碼做延遲處理
- 部分盒子出現(xiàn)閃退問(wèn)題,如果是在同一步動(dòng)作復(fù)現(xiàn),很大可能是該部分代碼出現(xiàn)類(lèi)型錯(cuò)誤
- 部分盒子出現(xiàn)閃退問(wèn)題,焦點(diǎn)切換一段時(shí)間,系統(tǒng)自動(dòng)退出。去掉 transition 等一系列 CSS3 屬性便可恢復(fù)
- 部分盒子出現(xiàn)閃退問(wèn)題,(特別是移動(dòng)盒子)GIF圖片導(dǎo)致性能瓶頸盒子閃退,去掉動(dòng)圖便可解決
- 移動(dòng)部分盒子自動(dòng)緩存API接口,加入時(shí)間戳可解決
- 移動(dòng)部分盒子 Cookie 存儲(chǔ)時(shí) path=/ 導(dǎo)致存儲(chǔ)失敗,采用默認(rèn)路徑,即不設(shè)置 path 屬性可正常存取
- 部分盒子EPG中有嵌套iframe導(dǎo)致頁(yè)面比例異常放大,需要在 iframe 嵌套頁(yè)面設(shè)置顯示比例viewport 和 page-view-size
- 部分盒子加載緩慢,切換數(shù)據(jù)卡頓。考慮是否內(nèi)存過(guò)小,此基礎(chǔ)上進(jìn)行優(yōu)化
- 播放器無(wú)法監(jiān)聽(tīng)播放結(jié)束事件解決方案
轉(zhuǎn)載于:https://www.cnblogs.com/menu/p/11196496.html
總結(jié)
以上是生活随笔為你收集整理的EPG开发《异常排查以及解决方案》的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Docker的上手(Ubuntu140.
- 下一篇: 11.2 注解的使用示例1 select