欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

firefox瀏覽器異?;謴头椒?

文檔序號:6601419閱讀:787來源:國知局
專利名稱:firefox瀏覽器異?;謴头椒?br> 技術領域
本發(fā)明涉及一種firefox瀏覽器異常恢復方法,尤指一種在Linux平臺下,因第三方組件或其他原因?qū)е庐惓5臑g覽器自動恢復的方法。
背景技術
在目前的Web體驗和開發(fā)中,瀏覽器結合各類插件、擴展等組件進行內(nèi)容豐富的產(chǎn)品開發(fā)是常用的一種方式。其中,Adobe Flash Player是目前使用最廣泛的多媒體插件,它作為一個跨平臺的瀏覽器插件,提供了突破性的Web體驗,成為適合開發(fā)創(chuàng)造豐富型互聯(lián)網(wǎng)應用程序、流視頻音頻的工具。然而,在Linux平臺下,Adobe Flash Player等瀏覽器組件在firefox下運行時經(jīng)常會導致firefox異常的現(xiàn)象。在以瀏覽器作為用戶操作或體驗載體的情況下,firefox—旦遇到異常,默認會彈出異常報告器,之后系統(tǒng)會進入停滯狀態(tài),在不能自動恢復的情況下只能重啟系統(tǒng),這在Linux平臺下基于firefox上開發(fā)支持 flash的web產(chǎn)品方面屬于高級別的可用性問題,這類問題最終會導致產(chǎn)品開發(fā)的流產(chǎn)。如圖1所示,在以瀏覽器作為用戶操作或體驗載體的情況下,firefox瀏覽器一旦遇到異常,默認會彈出異常報告器,之后系統(tǒng)會進入停滯狀態(tài),在不能自動恢復的情況下只能重啟系統(tǒng),其流程如圖1所示。若從firefox組件的角度解決該問題,對于閉源組件,如Adobe FlashPlayer,即便是確定了原因,也無法修改其源代碼;對于開源組件,即使可以修改其源代碼,也需要先對不同組件的源代碼分別進行分析和修改,解決方法不具有通用性。若從firefox瀏覽器源代碼方面解決該問題,需要修改firefox內(nèi)部的異常處理機制;若從配置角度解決該問題,只能在firefox異常時強制使得其不彈出異常報告器,而無法恢復firefox的正常運行,也就不能很好地解決產(chǎn)品的可用性問題。

發(fā)明內(nèi)容
基于上述原因,本發(fā)明旨在通過修改firefox瀏覽器默認的異常處理機制(向用戶顯示異常報告器)的方式解決該問題,而同時不需要修改firefox瀏覽器或瀏覽器組件 (如 Adobe Flash Player)的源代碼。本發(fā)明繞開難以解決導致異常原因的方式,而是通過解決異常后如何快速準確恢復來解決瀏覽器異常而產(chǎn)生不可用的問題。本發(fā)明的目的是提供一種改變firefox默認在異常情況下彈出異常報告器的處理機制,使系統(tǒng)在異常后能迅速恢復并繼續(xù)正常的運行,對用戶體驗不造成任何影響,并達到firefox和Adobe Flash Player等相關第三方組件(含插件和組件)兼容的目的。本發(fā)明的目的是避開不能修改和實現(xiàn)的對閉源組件(如Adobe FlashPlayer的修改),同時對開源的firefox的內(nèi)部也不進行修改,而是通過修改firefox的異常處理機制, 同時添加快速恢復機制,來實現(xiàn)firefox對各類插件的兼容,保證系統(tǒng)的穩(wěn)定運行。本發(fā)明涉及到的相關技術術語的名詞解釋
Adobe Flash Player 是一個多媒體播放器或播放器插件,在本文中,是指瀏覽器下的flash插件。 頁面跳轉(zhuǎn)是指瀏覽器在同一個頁面內(nèi)通過重新加載頁面地址在不同的HTML頁面間進行切換,如瀏覽器在www. baidu. com和www. 163. com兩個頁面間切換。頁面跳轉(zhuǎn)涉及頁面資源的釋放和重新加載。瀏覽器組件,插件,擴展組件在ASP中就是控件、對象,它的定義包含插件和擴展。插件是一種遵循一定規(guī)范的應用程序接口編寫出來的程序,插件的作用是使得WEB瀏覽器能夠直接調(diào)用插件程序,用于處理特定類型的數(shù)據(jù)或文件。而擴展是瀏覽器自身功能的擴展,如f irefox自身的如皮膚,主題的修改屬于f irefox的擴展,而f irefox通過Adobe Flash Player進行視頻播放是屬于firefox的插件機制。本發(fā)明的目的在于為了保證系統(tǒng)的穩(wěn)定性,不允許firefox出現(xiàn)異?;蛘咭驗閒irefox出現(xiàn)異常而導致系統(tǒng)不可用;即使允許firefox出現(xiàn)異常,但為了不對用戶體驗造成影響,不允許firefox彈出異常報告器界面;即使允許firefox出現(xiàn)異常后彈出異常報告器界面,也無法通過firefox默認的異常報告器完成瀏覽器正常重啟。其中,本發(fā)明最典型的應用場景是根據(jù)客戶需求對Linux系統(tǒng)進行過定制的系統(tǒng),如機頂盒系統(tǒng)。本發(fā)明采用的技術手段是本發(fā)明以瀏覽器firefox的異常報告機制與頁面訪問記錄機制為基礎,通過設計一個恢復的應用程序替換firefox的異常報告器程序,并添加監(jiān)控和恢復機制,在firefox異常后及時準確地重啟firefox,其實現(xiàn)的方法包括以下步驟(1)通過配置保留firefox瀏覽器在異常的情況下的默認處理方式異常時保證調(diào)用firefox異常報告器程序;(2)修改異常報告器(crash r印orter)程序,用一個可執(zhí)行的恢復程序替換 firefox瀏覽器的異常報告器程序設計一個恢復的應用程序替換firefox的異常報告器程序,保留firefox瀏覽器默認的異常處理機制,去除firefox瀏覽器的異常提示窗口 ;同時通過調(diào)用恢復程序,為后續(xù)firefox瀏覽器在有效頁面處重啟作準備。進一步地,還可以包括步驟C3)獲得firefox瀏覽器最后一次訪問的正確的有效頁面,重啟firefox并訪問該“有效頁面”:根據(jù)實際的產(chǎn)品應用需求,建立一種通用的產(chǎn)品的系統(tǒng)監(jiān)控機制,獲得firefox瀏覽器最后一次訪問的“有效頁面”;并在目標的產(chǎn)品系統(tǒng)下實現(xiàn)firefox瀏覽器恢復到頁面顯示的正常狀態(tài)。本發(fā)明的在有益技術效果在于現(xiàn)有的firefox異常后默認的重啟必須在普通系統(tǒng)下通過異常報告器進行人為操作,然而在定制系統(tǒng)下是不可操作的(有按鍵操作和焦點等眾多問題),且重啟后也不會滿足要求。因此,一旦firefox異常,彈出異常報告器后整個系統(tǒng)就會陷入“死機”狀態(tài),屬于可用性問題。即默認情況下一般不會有firefox瀏覽器重啟,也就不存在重啟后效果的對比。具體的實現(xiàn)效果對比是前者導致的結果是不可用,后者是即使異常也沒有給系統(tǒng)使用上造成任何影響。
4
本發(fā)明的f irefox瀏覽器異常的恢復方法,能保證監(jiān)控f irefox瀏覽器的異常,并在異常的狀態(tài)下迅速重新恢復到導致異常的頁面。同時,由于firefox瀏覽器在內(nèi)存中運行,啟動速度快,在異常后的Is內(nèi)就能從異常的頁面重啟,使得用戶體驗方面不會有很大的視覺變化,使得在Linux平臺下能穩(wěn)定的使用各種組件,屏蔽組件帶來的不兼容問題,達到產(chǎn)品的可用性需求。


圖1為firefox瀏覽器異常后的默認執(zhí)行流程圖。圖2為本發(fā)明具有異常恢復能力的執(zhí)行流程圖。
具體實施例方式本發(fā)明以瀏覽器firefox的異常報告機制與頁面訪問記錄機制為基礎,通過添加監(jiān)控和恢復機制,及時準確的重啟firefox來達到firefox和AdobeFlash Player兼容的目的。Web產(chǎn)品的系統(tǒng)一般都需要firefox瀏覽器在各類頁面進行跳轉(zhuǎn),下面結合附2,以如下應用場景為例對本發(fā)明作進一步說明,但本發(fā)明不局限于下面的實施例。用戶系統(tǒng)啟動后進入所需的http頁面前,需要過渡頁面進行跳轉(zhuǎn)(如過渡頁面用來檢測網(wǎng)絡狀態(tài)以判斷是否能夠訪問用戶主頁)。假定實際應用時是需要兩個過渡頁面跳轉(zhuǎn)來實現(xiàn)由start, html跳轉(zhuǎn)到jump, html,再由jump, html跳轉(zhuǎn)到實際的主頁index, html。若要保證firefox在類似這樣的應用下正確及時地恢復,必須首先對firefox進行配置(步驟10),即允許通過腳本關閉firefox窗口 ;禁用打開目標頁面的檢查;允許 firefox異常報告。firefox配置步驟(10)完成后,需要執(zhí)行如下步驟(1)在firefox正常運行(步驟11)時,用firefox瀏覽器默認的firefox異常報告器程序監(jiān)控及判斷firefox是否有異常(步驟12)。若firefox未發(fā)生異常,則firefox 繼續(xù)正常運行(步驟11);否則,用異?;謴统绦蛱鎿Q異常報告器(crash reporter)程序 (步驟13)。(2) firefox執(zhí)行用異?;謴统绦蛱鎿Q異常報告器(crash reporter)程序(步驟 13),首先刪除原始的異常報告器(crash reporter)程序,再設計一個用于實現(xiàn)異?;謴偷耐蓤?zhí)行程序(腳本程序)替換異常報告器(crash reporter)程序,使其可以在剛剛異常的頁面處啟動,為后續(xù)的重啟firefox并訪問正確的有效頁面作準備。如圖2中的虛線框所示。(3)檢測頁面記錄(步驟14)首先,獲得firefox最后一次訪問的頁面獲取最后一次訪問頁面的方法是通過文本過濾,獲取firefox用戶目錄下記錄文件中的最后一個 URL地址并記錄為URL_NEW。然后,確定該頁面是否為“有效頁面”若firefox在某次重啟時,正好在start, html, jump, html的系統(tǒng)跳轉(zhuǎn)頁面上再次異常,則由上一步獲取到的URL_ NEW就是系統(tǒng)的過渡頁面,此時需要從記錄文件中獲取之前存放的有效頁面的地址,再完成對應的工作。在有過渡頁面跳轉(zhuǎn)的情況下,需要重新執(zhí)行過渡頁面的跳轉(zhuǎn),滿足產(chǎn)品設計需求。這是因為,在一些產(chǎn)品的需求中,需要在進入實際的用戶頁面前對系統(tǒng)進行檢測或配置,如網(wǎng)絡是否可用,這種情況下需要用一些實現(xiàn)系統(tǒng)配置的頁面作過渡,在配置和確定后跳轉(zhuǎn)到實際的用戶頁面。因此,出現(xiàn)崩潰后也需要執(zhí)行這樣的流程,用以滿足產(chǎn)品的設計要求。(4)生成新的有效頁面(步驟15)首先,通過jump.html的模板頁面reSume_ jump_templet. html來構建resumejump. html,將異常處的地址寫入這個文件的跳轉(zhuǎn)地址中,再結合有效的URL_NEW生成一個可用的jump, html頁面。(5)重啟 firefox(步驟 16) :firefox 首先訪問 resume_start. html,跳轉(zhuǎn)到新生成的resumejump. html,然后從這個頁面跳轉(zhuǎn)到剛剛獲取到的異常點地址,firefox通過頁面轉(zhuǎn)換恢復到異常前的頁面,最終恢復正常運行(步驟11)。flash插件只是導致眾多異?,F(xiàn)象的主要對象,而非全部。同時,該恢復機制還適用于各類其它導致異常的情況。因此,本發(fā)明主要旨在保護系統(tǒng)穩(wěn)定性和產(chǎn)品可用性的重點。無論開源還是閉源的,在導致瀏覽異常的情況下,若是閉源項目則是無法修改,難以解決;若是開源的項目,即使修改也需要對其進行分析和改造,解決方案上會浪費人力物力。 而目前廣泛使用的flash player又必須要解決異常的問題。而本發(fā)明僅以播放組件Adobe Flash Player引起瀏覽器firefox的異常及恢復為例進行說明,事實上任何采用第三方組件(含插件和組件)導致異常的都在本發(fā)明解決的范圍內(nèi)。
權利要求
1.一種firefox瀏覽器異?;謴头椒ǎ涮卣髟谟诎ú襟E(1)通過配置保留firefox瀏覽器在異常的情況下的默認處理方式即異常時保證調(diào)用firefox異常報告器程序;(2)修改異常報告器程序,用一個可執(zhí)行的恢復程序替換firefox瀏覽器的異常報告器程序。
2.如權利要求1所述的方法,其特征在于還包括步驟獲得firefox瀏覽器最后一次訪問的正確的有效頁面,重啟firefox瀏覽器并訪問該有效頁面。
3.如權利要求1所述的方法,其特征在于其中步驟(1)中所述的配置包括允許通過腳本關閉firefox窗口 ;禁用打開目標頁面的檢查;允許firefox異常報告。
4.如權利要求1所述的方法,其特征在于其中步驟(2)的具體方式為修改異常報告器程序,設計一個替換異常報告器程序且用來實現(xiàn)異?;謴偷耐蓤?zhí)行程序。
5.如權利要求1所述的方法,其特征在于步驟(2)包括一個監(jiān)控程序,在監(jiān)控到瀏覽器異常時,迅速啟用恢復程序替換firefox瀏覽器的異常報告器程序。
6.如權利要求2所述的方法,其特征在于所述獲得firefox瀏覽器最后一次訪問的正確的有效頁面包括步驟獲取firefox最后一次訪問的頁面;確定該頁面是否為“有效頁面”;在有過渡頁面跳轉(zhuǎn)的情況下,需要重新執(zhí)行過渡頁面的跳轉(zhuǎn)。
7.如權利要求6所述的方法,其特征在于所述的獲取firefox最后一次訪問頁面的方法是通過文本搜索與過濾,獲取firefox用戶目錄下日志文件中的最后一個URL地址并記錄為URL_NEW。
8.如權利要求6所述的方法,其特征在于所述的確定該頁面是否為有效頁面的方法是若firefox在某次重啟時,正好在start, html, jump, html的系統(tǒng)跳轉(zhuǎn)頁面上再次異常,則獲取到的firefox用戶目錄下記錄文件中的最后一個URL地址URL_NEW就是系統(tǒng)的過渡頁面,此時需要獲取之前存放的有效頁面的地址,再完成對應的工作。
9.如權利要求6所述的方法,其特征在于在獲取到有效的firefox用戶目錄下日志文件中的最后一個URL地址URL_NEW后,通過這個URL地址和模板html來生成一個可用的 resume_jump. html頁面,然后啟動firefox通過頁面跳轉(zhuǎn)到達并顯示新的有效頁面。
全文摘要
本發(fā)明涉及一種firefox瀏覽器異?;謴头椒?1)通過配置保留firefox瀏覽器在異常的情況下的默認處理方式即異常時保證調(diào)用firefox異常報告器程序;(2)修改異常報告器程序,用一個可執(zhí)行的恢復程序替換firefox瀏覽器的異常報告器程序,使瀏覽器可以在剛剛異常的頁面處啟動。進一步地還包括步驟(3)獲得firefox瀏覽器最后一次訪問的正確的有效頁面,重啟firefox瀏覽器并訪問該有效頁面。本發(fā)明的firefox瀏覽器異常的恢復方法,能保證監(jiān)控firefox瀏覽器的異常,并在異常的狀態(tài)下迅速重新恢復到導致異常的頁面。
文檔編號G06F11/14GK102236587SQ20101015841
公開日2011年11月9日 申請日期2010年4月28日 優(yōu)先權日2010年4月28日
發(fā)明者蘭雨晴, 夏穎, 張木梁, 李文昌, 王鈞, 董恩廣, 鐘偉, 黃世林 申請人:上海中標軟件有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
水城县| 哈尔滨市| 松江区| 鹿泉市| 寻甸| 原阳县| 望都县| 阜南县| 中宁县| 普宁市| 休宁县| 西乌| 榆树市| 永城市| 石楼县| 南城县| 南城县| 大石桥市| 商丘市| 彩票| 喀什市| 临武县| 县级市| 抚顺县| 六盘水市| 屏东市| 北海市| 兴文县| 上高县| 贡觉县| 武城县| 凭祥市| 曲水县| 应城市| 陆良县| 瑞丽市| 佛山市| 衡南县| 休宁县| 泽州县| 阜南县|