[發明專利]在移動終端安裝或更新應用程序的方法和移動終端有效
| 申請號: | 201510670237.5 | 申請日: | 2015-10-13 |
| 公開(公告)號: | CN105159732B | 公開(公告)日: | 2018-08-03 |
| 發明(設計)人: | 馬曉波;劉云鵬;胡超博;吳磊 | 申請(專利權)人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類號: | G06F8/65 | 分類號: | G06F8/65 |
| 代理公司: | 北京中強智尚知識產權代理有限公司 11448 | 代理人: | 王書彪;劉艷芬 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 移動 終端 安裝 更新 應用程序 方法 | ||
本發明公開了一種在移動終端安裝或更新應用程序的方法和移動終端。該方法包括:根據移動終端的請求,將應用程序的安裝文件發送給所述移動終端,其中所述安裝文件包含兩個代碼文件和外殼程序,所述兩個代碼文件分別適用于不同版本的操作系統;在所述安裝文件被所述移動終端的操作系統加載時,由所述外殼程序判斷所述移動終端的操作系統的版本;以及根據判斷結果執行所述兩個代碼文件中的一個。根據該方法,可有效地解決了兼容性問題,又不會明顯地增加應用程序的加載時間,不影響用戶體驗。而且,這種方式對原應用程序的改動較小,易于調試和驗證。
技術領域
本發明涉及移動終端,具體涉及一種在移動終端安裝或更新應用程序的方法和移動終端。
背景技術
隨著用于智能手機的Android系統的演化,其v5.0版本(apilevel21)強制生效了諸多安全機制。例如,ASLR(Address Space Layout Randomization)旨在通過隨機組織包含代碼段、棧、堆和庫等進程關鍵數據區的地址空間定位,從而防范應用程序的緩沖區溢出攻擊。為此采用動態鏈接的應用程序,必須按照位置無關方式(Position IndependentExecutable,即PIE)進行編譯和鏈接(GCC編譯器選項-PIE和-fPIE),否則該版本的Android系統不予加載執行該程序。
但是,在當前智能手機的用戶群體中,也有很大一部分在使用具有較低版本的Android系統,而較低版本的Android系統,例如v2.3版本(apilevel9)無法識別位置無關方式的應用程序。這就導致適用于較高版本的Android系統的應用程序的代碼文件不適用于較低版本的Android系統,這樣無論是安裝還是更新該應用程序的操作,都無法得以實現。由此給Android應用程序的系統兼容性帶來了困難。
在現有技術中,對上述問題的一種解決方案是,應用程序的開發者仍以較低版本的Android系統為標準編寫代碼文件。如果需要安裝或更新該應用程序的移動終端的Android系統為較高版本(如v5.0版本),則在加載該代碼文件前,修改Android v5.0系統的動態鏈接器(/system/bin/linker程序),以繞開系統在應用程序加載過程中對位置無關方式(PIE)特性的校驗。雖然這種方案能夠解決應用程序對于不同版本的Android系統的兼容性問題,但這引入了明顯的安全風險,而且也增加了部署困難,在工程實踐中并不可行。
現有技術中對上述問題的另一種解決方案是,在應用程序的開發過程中,開發者預先針對不同版本的Android系統制作兩份不同的應用程序放在服務器上,其中一份適用于高版本的Android系統,另一份適用于低版本的Android系統。在某個移動終端請求下載安裝或更新該應用程序時,服務器向該終端發送其中預定的一份,如果恰好匹配,則進行安裝或更新。如果不匹配,則提示用戶安裝或更新失敗,經過用戶手動選擇后,再將另一份代碼文件發送給該移動終端。這種解決方案的問題是,隨著應用程序從一個版本變為兩個版本,所有依賴于該應用程序的外部模塊都必須要修改調用方式。而且這樣非常容易引入各種新的軟件缺陷。此外,如果第一次向用戶發送的代碼文件不匹配移動終端的系統版本,則還需要重新下載,這樣會影響用戶體驗。
可見,現有技術中亟需一種能夠較好解決應用程序針對不同版本Android系統的兼容性問題的方案。
發明內容
有鑒于此,本發明提出了一種在移動終端安裝或更新應用程序的方法和移動終端。
根據本發明的一個方面,提供了一種在移動終端安裝或更新應用程序的方法,包括:根據移動終端的請求,將應用程序的安裝文件發送給所述移動終端,其中所述安裝文件包含兩個代碼文件和外殼程序,所述兩個代碼文件分別適用于不同版本的操作系統;在所述安裝文件被所述移動終端的操作系統加載時,由所述外殼程序判斷所述移動終端的操作系統的版本;以及根據判斷結果執行所述兩個代碼文件中的一個。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510670237.5/2.html,轉載請聲明來源鉆瓜專利網。





