本發(fā)明專利技術(shù)提供的安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法,定制掃描使安卓系統(tǒng)的Package?Manager?Service掃描應(yīng)用的安裝包,獲得Package?Manager?Service分配的UID,將應(yīng)用運(yùn)行時(shí)需要加載的所有文件中所有符合UID格式的Owner?ID和Group?ID替換為獲得的UID。該方法只要將應(yīng)用運(yùn)行時(shí)需要加載的所有文件存儲(chǔ)到應(yīng)用的指定目錄下,應(yīng)用就可以直接啟動(dòng),不會(huì)執(zhí)行加載文件、下載補(bǔ)丁等操作。應(yīng)用的快速啟動(dòng)避免了用戶的長時(shí)間等待,極大提高了安卓系統(tǒng)用戶的體驗(yàn)。
Method for quick starting application of Android system
Quick start application method of Android system provided by the invention, the Android custom scan system Package Manager Service scanning application installation package, Package Manager Service assigned UID, all files will need to load the application running in all conform to the UID format of Owner ID and Group ID replaced get UID. As long as all the files needed to be loaded are stored in the specified directory of the application, the application can start directly without loading files and downloading patches. The rapid start of the application avoids the long wait of users and greatly improves the experience of Android users.
【技術(shù)實(shí)現(xiàn)步驟摘要】
安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法
本專利技術(shù)涉及安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法。
技術(shù)介紹
安卓(Android)系統(tǒng)是目前智能移動(dòng)終端等電子設(shè)備上廣泛使用的操作系統(tǒng),安卓系統(tǒng)中可以運(yùn)行各種應(yīng)用(應(yīng)用指能夠在安卓系統(tǒng)中運(yùn)行的軟件或程序)。安卓系統(tǒng)的應(yīng)用在啟動(dòng)時(shí)經(jīng)常會(huì)出現(xiàn)加載進(jìn)度條(實(shí)際上是把應(yīng)用運(yùn)行時(shí)需要加載的本地文件從應(yīng)用的安裝包中提取出來存儲(chǔ)到指定目錄),加載完成后有時(shí)又會(huì)彈出對話框強(qiáng)制要求下載補(bǔ)丁。如果應(yīng)用較大,加載文件和下載補(bǔ)丁可能會(huì)消耗數(shù)分鐘時(shí)間,此期間用戶只能等待,嚴(yán)重影響安卓系統(tǒng)的用戶體驗(yàn)。由于安卓系統(tǒng)的應(yīng)用需要加載的本地文件可以事先從安裝包中提取出來,補(bǔ)丁文件也可以事先下載或者直接向應(yīng)用的開發(fā)廠家索要,而存儲(chǔ)這些文件的指定目錄完全可以根據(jù)安卓系統(tǒng)和應(yīng)用自身的設(shè)置獲知。一個(gè)很自然的想法,可以在應(yīng)用啟動(dòng)前將應(yīng)用運(yùn)行時(shí)需要加載的所有文件都存儲(chǔ)到指定目錄下,應(yīng)用啟動(dòng)時(shí)就不再執(zhí)行加載文件或下載補(bǔ)丁的操作了。然而,標(biāo)準(zhǔn)安卓系統(tǒng)并不支持上述功能,即使將所有相關(guān)文件都存儲(chǔ)到指定目錄,安卓系統(tǒng)的很多應(yīng)用在啟動(dòng)時(shí)仍然會(huì)執(zhí)行加載文件、下載補(bǔ)丁等操作。如何解決這一問題,尚未見報(bào)道。在說明書“
技術(shù)介紹
”部分公開的內(nèi)容,有助于本領(lǐng)域技術(shù)人員理解本專利技術(shù)的技術(shù)方案,但不應(yīng)據(jù)此認(rèn)為這些內(nèi)容一定屬于現(xiàn)有技術(shù)或公知常識。
技術(shù)實(shí)現(xiàn)思路
為了克服“
技術(shù)介紹
”部分所反映的缺陷,本專利技術(shù)提供安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法。安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法,包括:1)定制掃描使安卓系統(tǒng)的PackageManagerService掃描應(yīng)用的安裝包,獲得PackageManagerService分配的UID;2)將應(yīng)用運(yùn)行時(shí)需要加載的所有文件中所有符合UID格式的OwnerID和GroupID替換為1)中獲得的UID。進(jìn)一步的,1)中還包括:提取所述安裝包的證書和摘要,PackageManagerService掃描時(shí)將安裝包的證書和摘要作為參數(shù)發(fā)送給PackageManagerService。進(jìn)一步的,1)中還包括:PackageManagerService掃描前提取所述安裝包對應(yīng)的odex文件存儲(chǔ)到對應(yīng)目錄。進(jìn)一步的,2)中所述的應(yīng)用運(yùn)行時(shí)需要加載的所有文件存儲(chǔ)在應(yīng)用的指定目錄下,應(yīng)用通過所述的指定目錄加載文件。本專利技術(shù)技術(shù)方案中,“包括”、“用于”等詞語應(yīng)按照開放式表達(dá)方式理解。本領(lǐng)域技術(shù)人員通過閱讀本說明書并結(jié)合現(xiàn)有技術(shù)或公知常識能夠獲知的內(nèi)容,本說明書中不再贅述。本專利技術(shù)提供的安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法,只要將應(yīng)用運(yùn)行時(shí)需要加載的所有文件存儲(chǔ)到應(yīng)用的指定目錄下,應(yīng)用就可以直接啟動(dòng),不會(huì)執(zhí)行加載文件、下載補(bǔ)丁等操作。應(yīng)用的快速啟動(dòng)避免了用戶的長時(shí)間等待,極大提高了安卓系統(tǒng)用戶的體驗(yàn)。附圖說明圖1為具體實(shí)施方式中安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法的流程圖。具體實(shí)施方式下面對本專利技術(shù)的實(shí)施方式進(jìn)行進(jìn)一步的具體說明。但應(yīng)注意,本專利技術(shù)的范圍并不局限于所描述的具體技術(shù)方案。任何對所描述的具體技術(shù)方案中的技術(shù)要素進(jìn)行相同或等同替換獲得的技術(shù)方案或本領(lǐng)域技術(shù)人員在所描述的具體技術(shù)方案的基礎(chǔ)上不經(jīng)過創(chuàng)造性勞動(dòng)就可以獲得的技術(shù)方案,都應(yīng)當(dāng)視為落入本專利技術(shù)的保護(hù)范圍。安卓(Android)系統(tǒng)是目前智能移動(dòng)終端等電子設(shè)備上廣泛使用的操作系統(tǒng),安卓系統(tǒng)中可以運(yùn)行各種應(yīng)用(應(yīng)用指能夠在安卓系統(tǒng)中運(yùn)行的軟件或程序)。安卓系統(tǒng)的應(yīng)用一般都有安裝包(即安卓系統(tǒng)中的apk文件,根據(jù)安卓系統(tǒng)應(yīng)用的開發(fā)習(xí)慣,該文件的名稱往往是base.apk),安裝包存儲(chǔ)在指定目錄下,例如“/data/app/應(yīng)用包名”目錄。安卓系統(tǒng)的應(yīng)用都有對應(yīng)的包名,包名可以從該應(yīng)用的apk文件中解析出來。應(yīng)用在運(yùn)行過程中需要加載很多文件,這些文件也存儲(chǔ)在指定目錄下,例如“/sdcard/Android/data/應(yīng)用包名”或者“/data/data/應(yīng)用包名”目錄。應(yīng)用在運(yùn)行過程中通過指定目錄加載需要的文件。本專利技術(shù)提供的安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法,其流程如圖1所示,包括:S101:定制掃描使安卓系統(tǒng)的PackageManagerService掃描應(yīng)用的安裝包,獲得PackageManagerService分配的UID。在某一應(yīng)用啟動(dòng)之前進(jìn)行定制掃描,使安卓系統(tǒng)的PackageManagerService(安卓系統(tǒng)中最常用的服務(wù)之一,負(fù)責(zé)應(yīng)用的安裝、卸載、信息查詢等)掃描上述應(yīng)用的安裝包,PackageManagerService完成掃描后會(huì)分配一個(gè)UID存儲(chǔ)在相應(yīng)的文件中,查看該文件即可獲得該UID。UID通常指用戶標(biāo)識(UserIdentification),但由于安卓系統(tǒng)是單用戶操作系統(tǒng),安卓系統(tǒng)的UID變?yōu)榕c應(yīng)用對應(yīng)的標(biāo)識。所述的定制掃描,指通過對安卓系統(tǒng)進(jìn)行設(shè)置使安卓系統(tǒng)的PackageManagerService掃描指定的文件或文件目錄。如何實(shí)現(xiàn)定制掃描,以5.1版本的安卓系統(tǒng)為例進(jìn)行說明。1)在frameworks/base/core/java/android/content/pm/IPackageManager.aidl文件中增加一個(gè)掃描應(yīng)用的安裝包所在目錄的接口。2)在frameworks/base/cmds/pm/src/com/android/commands/pm/Pm.java中增加一個(gè)掃描(scan)的命令。3)在frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java中增加處理函數(shù),上述處理函數(shù)以應(yīng)用的包名為參數(shù)。完成以上設(shè)置后,PackageManagerService可以對指定的應(yīng)用安裝包進(jìn)行掃描。如果應(yīng)用的安裝包較大,PackageManagerService對安裝包的掃描時(shí)間仍然較長,達(dá)不到快速啟動(dòng)應(yīng)用的效果,需要對PackageManagerService的掃描過程進(jìn)一步優(yōu)化。PackageManagerService對安裝包(base.apk文件)的掃描有兩個(gè)操作耗時(shí)較多,一是掃描base.apk文件時(shí)搜集該文件的證書和摘要,二是生成odex文件(odex文件是apk文件中的classes.dex文件通過odex優(yōu)化生成的)并存儲(chǔ)到對應(yīng)的目錄,例如“/data/dalvik-cache/arm”目錄。對于這兩個(gè)耗時(shí)較多的操作,可以進(jìn)行相應(yīng)的優(yōu)化。首先,可以在應(yīng)用啟動(dòng)前提取安裝包的證書和摘要,將證書和摘要存儲(chǔ)到某一文件中,PackageManagerService掃描時(shí)將安裝包的證書和摘要作為參數(shù)發(fā)送給PackageManagerService。同時(shí),關(guān)閉PackageManagerService掃描安裝包時(shí)對安裝包內(nèi)諸多文件的校驗(yàn),這樣可以大大縮短PackageManagerService的掃描時(shí)間。其次,可以利用安卓系統(tǒng)源代碼中的SCAN_NO_DEX參數(shù)設(shè)置PackageManagerService掃描時(shí)不進(jìn)行odex優(yōu)化;或者在應(yīng)用啟動(dòng)前提取安裝包對應(yīng)的odex文件,將odex文件存儲(chǔ)到對應(yīng)目錄。PackageManagerService掃描前odex文件已經(jīng)存在,則PackageManagerService掃描時(shí)不再進(jìn)行odex優(yōu)化,也能大大縮短掃描時(shí)間。S102:本文檔來自技高網(wǎng)...

【技術(shù)保護(hù)點(diǎn)】
安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法,其特征在于,所述的方法包括:1)定制掃描使安卓系統(tǒng)的Package?Manager?Service掃描應(yīng)用的安裝包,獲得Package?Manager?Service分配的UID;2)將應(yīng)用運(yùn)行時(shí)需要加載的所有文件中所有符合UID格式的Owner?ID和Group?ID替換為1)中獲得的UID。
【技術(shù)特征摘要】
1.安卓系統(tǒng)快速啟動(dòng)應(yīng)用的方法,其特征在于,所述的方法包括:1)定制掃描使安卓系統(tǒng)的PackageManagerService掃描應(yīng)用的安裝包,獲得PackageManagerService分配的UID;2)將應(yīng)用運(yùn)行時(shí)需要加載的所有文件中所有符合UID格式的OwnerID和GroupID替換為1)中獲得的UID。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,1)中還包括:提取所述安裝包的證書和摘要,Pack...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:王小品,田樂,趙幸,王方馳,
申請(專利權(quán))人:海馬云天津信息技術(shù)有限公司,
類型:發(fā)明
國別省市:天津,12
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會(huì)獲得科技券。