Android應用軟件資源更新的方法和裝置的制造方法
【技術領域】
[0001 ] 本申請涉及計算機技術領域,具體涉及終端技術領域,尤其涉及Android應用軟件資源更新的方法和裝置。
【背景技術】
[0002]在Android平臺上,應用軟件安裝完成后,如果要更新安裝文件(APK)安裝目錄下的文件需要超級管理員權限才可以更改,但是如果用戶開啟超級管理員權限,則有可能受到惡意軟件的侵擾。
[0003]一般情況下,應用程序開發(fā)完成后,如果資源文件更新,比如加入界面、修改界面、功能優(yōu)化等,則需要重新對應用軟件的安裝包進行打包才能正常完成更新并運行。例如,目前大量的支付應用都需要將第三方的軟件開發(fā)工具包(SDK, Software Development Kit)打包到自身的安裝包中,如果支付SDK更新,則應用廠商需要重新打包發(fā)布自己的新的應用軟件安裝包,更新周期頻繁,應用廠商就需要頻繁地重新打包應用軟件安裝包,帶來很多不便。如何在不重新打包編譯應用軟件安裝包的情況下實現(xiàn)應用軟件的資源更新,是當前面臨的問題。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本申請?zhí)峁┝艘环NAndroid應用軟件資源更新的方法和裝置。
[0005]一方面,本申請?zhí)峁┝艘环NAndroid應用軟件資源更新的方法,所述方法包括:
[0006]構(gòu)建包含待更新資源的Android軟件安裝包APK ;
[0007]創(chuàng)建代理Activity并加載所述APK的Activity ;
[0008]通過所述代理Activity對所述待更新資源重定向;
[0009]根據(jù)所述重定向調(diào)用所述APK中的待更新資源。
[0010]在一些可選的實現(xiàn)方式中,所述創(chuàng)建代理Activity并加載所述APK的Activity包括:
[0011]為所述APK的Activity定義一個基類Activity ;
[0012]所述基類Activity對所述代理Activity進行配置;
[0013]所述代理Activity執(zhí)行所述APK的Activity。
[0014]在一些可選的實現(xiàn)方式中,所述構(gòu)建包含待更新資源的Android軟件安裝包APK包括:通過將待更新的資源文件打包或編譯,生成Android軟件安裝包。
[0015]在一些可選的實現(xiàn)方式中,通過所述代理Activity對所述待更新資源重定向包括所述代理Activity重載所述資源的訪問方法和路徑。
[0016]在一些可選的實現(xiàn)方式中,通過所述代理Activity對所述待更新資源重定向還包括:所述APK設置調(diào)用者的權限。
[0017]在一些可選的實現(xiàn)方式中,所述通過所述代理Activity對所述待更新資源重定向還包括:所述APK根據(jù)自身上下文環(huán)境對當前的調(diào)用者進行判斷,若判斷為應用軟件調(diào)用,則將程序運行的上下文環(huán)境切換為應用軟件的上下文環(huán)境。
[0018]在一些可選的實現(xiàn)方式中,在構(gòu)建包含待更新資源的Android軟件安裝包APK之前,還包括:
[0019]檢測有無待更新資源,若檢測到有,則執(zhí)行包含所述待更新資源的APK的構(gòu)建。
[0020]在一些可選的實現(xiàn)方式中,在根據(jù)所述重定向調(diào)用所述APK中的待更新資源之前,還包括:
[0021]所述應用軟件訪問資源時,判斷自身有無所需資源,若判斷結(jié)果為沒有,則根據(jù)重定向在所述APK中查找資源。
[0022]另一方面,本申請還提供了一種Android應用軟件資源更新的裝置,所述裝置包括:
[0023]構(gòu)建模塊,用于構(gòu)建包含待更新資源的Android軟件安裝包APK ;
[0024]加載模塊,用于創(chuàng)建代理Activity并加載所述APK的Activity ;
[0025]重定向模塊,通過所述代理Activity對所述待更新資源重定向;
[0026]調(diào)用模塊,根據(jù)所述重定向調(diào)用所述APK中的待更新資源。
[0027]在一些可選的實現(xiàn)方式中,所述裝置還包括:
[0028]檢測模塊,用于檢測有無未安裝的資源,若檢測到有,則執(zhí)行包含待更新資源的APK的構(gòu)建;
[0029]判斷模塊,用于在應用軟件訪問資源時,判斷自身有無所需資源,若判斷結(jié)果為沒有,則根據(jù)重定向在所述APK中查找并訪問資源。
[0030]本申請?zhí)峁┑腁ndroid應用軟件資源更新的方法和裝置,通過構(gòu)建包含待更新資源的Android軟件安裝包APK,隨后創(chuàng)建代理Activity并加載所述APK的Activity,之后通過所述代理Activity對所述待更新資源重定向,最后根據(jù)所述重定向調(diào)用所述APK中的待更新資源,無需對應用軟件的安裝包重新打包編譯即可實現(xiàn)應用程序資源的動態(tài)更新,節(jié)約了系統(tǒng)資源。
【附圖說明】
[0031]通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本申請的其它特征、目的和優(yōu)點將會變得更明顯:
[0032]圖1是本申請Android應用軟件資源更新的方法的一個實施例的流程圖;
[0033]圖2是本申請Android應用軟件資源更新的方法的另一個實施例的流程圖;
[0034]圖3是本申請Android應用軟件資源更新的方法的再一個實施例的流程圖;
[0035]圖4是本申請Android應用軟件資源更新的裝置的一個實施例的功能模塊示意圖。
【具體實施方式】
[0036]下面結(jié)合附圖和實施例對本申請作進一步的詳細說明。可以理解的是,此處所描述的具體實施例僅僅用于解釋相關發(fā)明,而非對該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關發(fā)明相關的部分。
[0037]需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結(jié)合實施例來詳細說明本申請。
[0038]請參考圖1,其示出了本申請一種Android應用軟件資源更新方法的一個實施例的流程100。本實施例主要以該方法應用于智能終端中來舉例說明,該終端可以包括智能手機、平板電腦、電子書閱讀器、MP3播放器(Moving Picture Experts Group Aud1 LayerIII,動態(tài)影像專家壓縮標準音頻層面3)、MP4播放器(Moving Picture Experts GroupAud1 Layer IV,動態(tài)影像專家壓縮標準音頻層面4)、膝上型便攜計算機和臺式計算機等坐寸ο
[0039]所述Android應用程序資源更新的方法,包括以下步驟:
[0040]步驟101,構(gòu)建包含待更新資源的Android軟件安裝包APK。
[0041]Android軟件安裝包文件(Android Package, APK)是一種Android操作系統(tǒng)上的應用程序安裝文件格式。一個Android應用程序的代碼想要在Android設備上運行,必須先進行編譯,然后被打包成為一個被Android系統(tǒng)所能識別的文件才可以被運行,而這種能被Android系統(tǒng)識別并運行的文件格式便是“APK”。一個APK文件內(nèi)包含被編譯的代碼文件(.dex文件),文件資源(resources),資源目錄(assets),證書(certificates),和清單文件(manifest file)。通常一個APK包含以下文件:
[0042]META-1NF 文件夾;
[0043]res:APK所需要的資源文件夾;
[0044]AndroidManifes