通過文件服務器實現ota升級的方法
【專利摘要】本發明實施例公開了一種通過文件服務器實現OTA升級的方法包括:S1,當用戶選擇在線更新客戶端軟件時,客戶端生成一個網絡文件路徑,并根據所述網絡文件路徑從文件服務器下載一個配置文件,其中,所述配置文件預先存放在所述文件服務器的特定目錄中;S2,解析所述配置文件,并根據所述配置文件中的信息查找最匹配的升級包;S3,如果找到匹配的升級包,則提示用戶發現可用的升級包,由用戶確認是否需要升級;S4,若用戶確認升級,則根據所述配置文件中提供的升級包下載路徑下載所述升級包至所述客戶端;S5,升級包下載完成后,在所述客戶端進行軟件升級。實施本發明實施例可通過文件服務器實現OTA升級方法,無需專門開發專用的OTA服務器。
【專利說明】通過文件服務器實現OTA升級的方法
【技術領域】
[0001]本發明涉及移動通信【技術領域】,尤其涉及一種通過文件服務器實現OTA升級的方法。
【背景技術】
[0002]隨著智能手機、平板電腦等設備的流行,越來越多的設備需要系統軟件升級功能,尤其是網絡升級功能的需求更為突出。在Android原生的系統中,有一套標準的本地升級功能,通過在本地SD卡或FLASH存儲器中,放置一個update, zip,即可完成系統升級功能。而OTA (Over 一 the 一 AirTechnology,空中下載技術)則是一種通過無線網絡進行數據下載的功能,現已被廣泛應用于手機、平板電腦等設備的網絡升級中。不同廠家的OTA升級方式的協議不一樣,例如有些簡單的做法就是直接在設備中指定一個升級文件的網絡路徑,然后下載到本地進行升級;而一些復雜的OTA升級協議則包括用戶登錄、機型確認、文件下載等一系列操作,這對搭建OTA升級服務器提出了較高的要求。然而現有的技術中存在以下缺點:
[0003]1,直接只使用網絡文件的方式過于簡單,由于只有一個要升級的目標文件,信息量少,從而無法進行下載文件的校驗、版本管理、發布說明、特定條件機器的升級等方面的操作;
[0004]2、使用較復雜的專門的OTA協議的方式,需要單獨部署OTA服務器,工作量和難度大且費用高,很多廠商無法達到這個標準。
【發明內容】
[0005]本發明實施例所要解決的技術問題在于,提供一種實現OTA升級的方法。可利用簡單的操作實現通過普通的文件服務器實現OTA升級。
[0006]為了解決上述技術問題,本發明實施例提供了一種通過文件服務器實現OTA升級的方法,包括:
[0007]SI,當用戶選擇在線更新客戶端軟件時,客戶端生成一個網絡文件路徑,并根據所述網絡文件路徑從文件服務器下載一個配置文件,其中,所述配置文件預先存放在所述文件服務器的特定目錄中;
[0008]S2,解析所述配置文件,并根據所述配置文件中的信息查找最匹配的升級包;
[0009]S3,如果找到匹配的升級包,則提示用戶發現可用的升級包,由用戶確認是否需要升級;
[0010]S4,若用戶確認升級,則根據所述配置文件中提供的升級包下載路徑下載所述升級包至所述客戶端;
[0011]S5,升級包下載完成后,在所述客戶端進行軟件升級。
[0012]進一步的,所述步驟SI中,客戶端根據所配置的服務器的路徑以及自身的機型號和軟件的版本號生成所述網絡文件路徑。[0013]進一步的,所述文件服務器至少包括http或ftp文件服務器。
[0014]進一步的,所述配置文件描述一個或多個升級包的包括下載路徑、版本號、校驗碼、顯示給用戶看的支持多國語言的發布說明、以及目標機器的機型名、廠商名、序列號段、MAC地址段、IMEI號段的信息。
[0015]進一步的,所述配置文件的命名格式為機型名_版本號。
[0016]進一步的,所述配置文件的格式為xml。
[0017]進一步的,所述步驟S2中,僅當所述配置文件中描述的版本號比客戶端軟件當前的版本號高時查找最匹配的升級包的信息。
[0018]具體的,所述步驟S2包括步驟:
[0019]S21,將客戶端中記錄升級包下載路徑、校驗碼信息、發布說明的項清空,設置匹配數量N=-1;
[0020]S22,從所述配置文件中獲取下一個升級包的描述信息;
[0021]S23,判斷是否成功獲取所述描述信息,如果是,進入步驟S24,否則,進入步驟S29 ;
[0022]S24,設置匹配計數器Count=O ;
[0023]S25,依次檢查所述描述信息中的各機器識別信息描述項,包括機型名、廠商名、序列號范圍等,是否與客戶端相應項匹配,每匹配一項設置count=count+l ;
[0024]S26,判斷是否有不匹配項,如果有,則返回步驟S22,否則進入步驟S27 ;
[0025]S27,判斷count是否大于N,如果是,進入步驟S28,否則返回步驟S22 ;
[0026]S28,根據所述升級包的描述信息更新客戶端所述記錄升級包下載路徑、校驗碼信息、發布說明的項,并設置N=Count,然后返回步驟S22;
[0027]S29,處理結束。
[0028]進一步的,所述步驟S3中,在找到合適的升級包后,根據配置文件中的發布說明顯示確認升級的對話框,以提示用戶發現可用的升級包,并由用戶確認是否需要升級。
[0029]進一步的,所述步驟S5中,客戶端在成功下載升級包后,生成校驗碼并與所述配置文件中描述的校驗碼進行比對,僅在校驗碼比對正確時才開始進行軟件升級。
[0030]實施本發明實施例,具有如下有益效果:
[0031]I,使用普通的網絡文件服務器實現OTA升級服務器,無需專門開發專用的OTA服務器;
[0032]2,由于可以通過文件服務器實現OTA升級,而網絡中又有很多免費的文件服務器,因此可以減少費用;
[0033]3,實現過程簡單,開發難度低;
[0034]4,可配置程度高,靈活性強,可對下載的軟件進行校驗、版本管理、發布說明、特定條件機器的升級等方面的操作;
[0035]5,適用于多種移動終端,例如手機、平板電腦等。
【專利附圖】
【附圖說明】
[0036]圖1本發明一實施例的流程圖;
[0037]圖2是本發明另一實施例的流程圖;[0038]圖3是本發明一實施例中查找最匹配升級包的流程圖;
[0039]圖4是本發明一實施例中驗證校驗碼的流程圖。
【具體實施方式】
[0040]為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明作進一步地詳細描述。
[0041]本發明所涉及的OTA升級方法分為服務器端和客戶端。其中所述服務器為一個普通的網絡文件服務器,例如,http或ftp文件服務器。在所述服務器的特定目錄中存放著一個命名格式為“機型名_版本號.xml”的配置文件CF。所述配置文件CF描述了一個或多個升級包UF的下載路徑P、版本號V、校驗碼M、顯示給用戶看的支持多國語言的發布說明R,以及目標機器的機型名、廠商名、序列號段、MAC地址段、頂EI號段等機器識別信息。可描述多個升級包UF的目的是為了實現不同條件的機器升級不同軟件的功能。當然,除了以上信息,還可以根據實際需求增加其他相關信息。
[0042]在本發明的一個實施例中,所述配置文件CF 的結構為(可包含多個〈packageX/package〉描述):
[0043]
<firmware>
<version>Version</version>
<package>
<checksum>MD5</checksum>
<url>Package Path</url>
<info>Release Information</info>
布說明</'info_zh>
<product>Product Name</info>
<brand>Brand Name</brand>
<sn>StartSn-EndSn</sn>
<mac>StartMac-EndMac</mac>
<imei>StartIme1-EndImei</imei>
〈/package〉
</firmware>
[0044]圖1所示為本發明一實施例的流程圖。如圖1所示的實施例包括步驟:
[0045]SI,當用戶選擇在線更新客戶端軟件時,客戶端生成一個網絡文件路徑,并根據所述網絡文件路徑從文件服務器下載一個配置文件CF,其中,所述配置文件CF預先存放在所述文件服務器的特定目錄中;
[0046]S2,解析所述配置文件CF,并根據所述配置文件CF中的信息查找最匹配的升級包UF ;
[0047]S3,如果找到匹配的升級包UF,則提示用戶發現可用的升級包UF,由用戶確認是否需要升級;
[0048]S4,若用戶確認升級,則根據所述配置文件CF中提供的升級包下載路徑P下載所述升級包UF至所述客戶端;
[0049]S5,升級包UF下載完成后,在所述客戶端進行軟件升級。
[0050]圖2所示為本發明另一實施例的流程圖。與圖1所示實施例相比,圖2所示實施例的不同之處在于,所述客戶端在生成所述網絡文件路徑時,具體的,通過所配置的服務器的路徑以及自身的機型號和軟件的版本號生成所述網絡文件路徑。除此之外,在下載并解析所述配置文件CF之后,僅當所述配置文件中描述的版本號V比客戶端軟件當前的版本號高時查找最匹配的升級包UF的信息。進一步的,在找到合適的升級包UF后,根據配置文件中的發布說明R顯示確認升級的對話框,以提示用戶發現可用的升級包UF,由用戶確認是否需要升級。
[0051]具體的,如圖2所示,本發明另一實施例包括步驟:
[0052]Al,用戶選擇在線更新系統;
[0053]A2,客戶端根據所配置的服務器的路徑以及自身的機型號和軟件版本號生成網絡文件路徑,并通過此路徑下載配置文件CF ;
[0054]A3,判斷是否成功下載所述配置文件CF,如果是,進入步驟A4,否則進入步驟Al I ;
[0055]A4,解析所述配置文件CF ;
[0056]A5,判斷配置文件CF中的版本號V是否比客戶端中軟件版本號高,如果是,進入步驟A6,否則進入步驟All;
[0057]A6,查找最匹配的升級包UF;
[0058]A7,判斷是否找到合適的升級包UF,如果是,進入步驟AS,否則進入步驟All;
[0059]AS,根據配置文件CF中的發布說明R顯示確認升級的對話框,等待用戶選擇;
[0060]A9,判斷用戶是否確認升級,如果是,則進入步驟AlO,否則進入步驟All;
[0061]AlO,進入升級流程;
[0062]All,處理結束。
[0063]圖3是本發明一實施例中查找最匹配升級包的流程圖,包括步驟:
[0064]S21,將客戶端中記錄升級包下載路徑、校驗碼、發布說明的項清空,設置匹配數量N=-1;
[0065]S22,從所述配置文件CF中獲取下一個升級包的描述信息I;
[0066]S23,判斷是否成功獲取所述描述信息I,如果是,進入步驟S24,否則,進入步驟S29 ;
[0067]S24,設置匹配計數器Count=O ;
[0068]S25,依次檢查所述描述信息I中的各機器識別信息描述項,包括機型名、廠商名、序列號范圍,是否與客戶端相應項匹配,每匹配一項設置count=count+1 ;
[0069]S26,判斷是否有不匹配項,如果有,則返回步驟S22,否則進入步驟S27 ;
[0070]S27,判斷count是否大于N,如果是,進入步驟S28,否則返回步驟S22 ;
[0071]S28,根據所述升級包的描述信息I更新客戶端所述記錄升級包下載路徑、校驗碼及發布說明的項,并設置N=Count,然后返回步驟S22;
[0072]S29,處理結束。
[0073]進一步的,在本發明的另一個實施例中,客戶端在成功下載升級包后,生成校驗碼并與所述配置文件CF中描述的校驗碼M進行比對,僅在校驗碼比對正確時才進入下一步驟。具體步驟如圖4所示:
[0074]S51,根據配置文件CF中描述的最匹配的升級包下載路徑P下載升級包UF至客戶端;
[0075]S52,客戶端生成MD5校驗碼,并與配置文件CF中描述的校驗碼M進行比對;
[0076]S53,判斷校驗碼是否正確,如果是,進入步驟S54,否則進入步驟S55;
[0077]S54,啟動本地升級功能,開始進行軟件升級;
[0078]S55,處理結束。
[0079]應當理解,本發明所述客戶端不僅包括手機或平板電腦,還包括其他使用網絡升級的設備。
[0080]以上所述是本發明的優選實施方式,應當指出,對于本【技術領域】的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為本發明的保護范圍。
【權利要求】
1.一種通過文件服務器實現OTA升級的方法,其特征在于, Si,當用戶選擇在線更新客戶端軟件時,客戶端生成一個網絡文件路徑,并根據所述網絡文件路徑從文件服務器下載一個配置文件,其中,所述配置文件預先存放在所述文件服務器的特定目錄中; S2,解析所述配置文件,并根據所述配置文件中的信息查找最匹配的升級包; S3,如果找到匹配的升級包,則提示用戶發現可用的升級包,由用戶確認是否需要升級; S4,若用戶確認升級,則根據所述配置文件中提供的升級包下載路徑下載所述升級包至所述客戶端; S5,升級包下載完成后,在所述客戶端進行軟件升級。
2.根據權利要求1所述方法,其特征在于,所述步驟SI中,客戶端根據所配置的服務器的路徑以及自身的機型號和軟件的版本號生成所述網絡文件路徑。
3.根據權利要求1所述方法,其特征在于,所述文件服務器至少包括http或ftp文件服務器。
4.根據權利要求1所述方法,其特征在于,所述配置文件描述一個或多個升級包的包括下載路徑、版本號、校驗碼、顯示給用戶看的支持多國語言的發布說明、以及目標機器的機型名、廠商名、序列號段、MAC地址段、IMEI號段的信息。
5.根據權利要求1所述方法,其特征在于,所述配置文件的命名格式為機型名_版本號。
6.根據權利要求1所述方法,其特征在于,所述配置文件的格式為xml。
7.根據權利要求1所述方法,其特征在于,所述步驟S2中,僅當所述配置文件中描述的版本號比客戶端軟件當前的版本號高時查找最匹配的升級包的信息。
8.根據權利要求1所述方法,其特征在于,所述步驟S2包括步驟: S21,將客戶端中記錄升級包下載路徑、校驗碼信息、發布說明的項清空,設置匹配數量N=-1; S22,從所述配置文件中獲取下一個升級包的描述信息; S23,判斷是否成功獲取所述描述信息,如果是,進入步驟S24,否則,進入步驟S29 ; S24,設置匹配計數器Count=O ; S25,依次檢查所述描述信息中的各機器識別信息描述項,包括機型名、廠商名、序列號范圍,是否與客戶端相應項匹配,每匹配一項設置count=count+l ; S26,判斷是否有不匹配項,如果有,則返回步驟S22,否則進入步驟S27 ; S27,判斷count是否大于N,如果是,進入步驟S28,否則返回步驟S22 ; S28,根據所述升級包的描述信息更新客戶端所述記錄升級包下載路徑、校驗碼信息、發布說明的項,并設置N=count,然后返回步驟S22; S29,處理結束。
9.根據權利要求1所述方法,其特征在于,所述步驟S3中,在找到合適的升級包后,根據配置文件中的發布說明顯示確認升級的對話框,以提示用戶發現可用的升級包,并由用戶確認是否需要升級。
10.根據權利要求1所述方法,其特征在于,所述步驟S5中,客戶端在成功下載升級包后,生成校驗碼并與所述配置文件中描述的校驗碼進行比對,僅在校驗碼比對正確時才開始進行軟件升 級。
【文檔編號】G06F9/445GK103810011SQ201410064899
【公開日】2014年5月21日 申請日期:2014年2月25日 優先權日:2014年2月25日
【發明者】劉榮 申請人:廣州視源電子科技股份有限公司