两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

應用程序的存儲空間切換方法及裝置制造方法

文檔序號:6515892閱讀:266來源:國知局
應用程序的存儲空間切換方法及裝置制造方法
【專利摘要】本發(fā)明公開了應用程序的存儲空間切換方法及裝置,其中,所述方法包括:檢測當前操作系統(tǒng)下已安裝的應用程序;判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。通過本發(fā)明,可以實現(xiàn)應用程序的批量快速切換。
【專利說明】應用程序的存儲空間切換方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及操作系統(tǒng)【技術(shù)領(lǐng)域】,具體涉及應用程序的存儲空間切換方法及裝置。【背景技術(shù)】
[0002]人們所使用的移動終端設備,經(jīng)歷了從功能單一到能滿足用戶多種需求的智能化設計的不同階段。如今的移動終端設備,已經(jīng)成為多個不同領(lǐng)域技術(shù)相結(jié)合的科技產(chǎn)物,其發(fā)展趨勢也越來越趨向于多元化。隨著移動技術(shù)的發(fā)展,硬件成本的降低,智能化的移動設備也得到了大規(guī)模的普及。
[0003]硬件效能的不斷提升使得設備有能力運行相對大型的操作系統(tǒng),而移動終端設備硬件的多樣化和復雜化,也使其搭載的操作系統(tǒng)成為一種需要,作為一種軟件資源,在移動終端設備上所搭載的操作系統(tǒng),如Android安卓操作系統(tǒng),其職能與其他平臺上所安裝的操作系統(tǒng)有著共同之處,包括負責管理設備的軟硬件資源,控制其他程序的運行,并為其他程序的運行提供服務和支持,以及為用戶提供交互操作界面等。在搭載操作系統(tǒng)的移動終端設備上,用戶與設備的交互基本上都是通過操作系統(tǒng)的支持來完成。
[0004]在智能化移動終端設備上搭載操作系統(tǒng),為用戶所擁有的通信設備上使用更多功能更強大,種類更豐富的軟件創(chuàng)造了條件。隨著各種平臺大量應用軟件的出現(xiàn),各種通信設備應用平臺上的各類應用軟件也層出不窮。各種應用軟件能夠為用戶提供的服務越來越豐富,另一方面,隨著應用市場的日漸龐大,用戶的選擇余地也越來越大,造成的現(xiàn)狀是多個應用程序的同時安裝在用戶的通信設備上,使得通信設備的可用存儲空間變得越來越小,而部分通信設備受性能的限制,安裝過多的應用程序會影響設備的運行效率。一方面,用戶需要這些軟件,無法卸載它們;另一發(fā)面,手機可用存儲空間越來越小,無法滿足用戶繼續(xù)安裝其他軟件的需求。

【發(fā)明內(nèi)容】

[0005]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的應用程序的存儲空間切換方法和相應的應用程序的存儲空間切換裝置,可以實現(xiàn)應用程序的批量快速切換。
[0006]依據(jù)本發(fā)明的一個方面,提供了一種應用程序的存儲空間切換方法,包括:
[0007]檢測當前操作系統(tǒng)下已安裝的應用程序;
[0008]判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;
[0009]在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;
[0010]以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;
[0011]當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
[0012]可選地,還包括:
[0013]獲取所述當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換;
[0014]所述檢測當前操作系統(tǒng)下已安裝的應用程序,包括:
[0015]在判斷當前版本的操作系統(tǒng)能夠支持應用程序存儲空間的切換后,檢測當前操作系統(tǒng)下已安裝的應用程序。
[0016]可選地,還包括:
[0017]檢測系統(tǒng)基本存儲與系統(tǒng)擴展存儲是否共用同一分區(qū);
[0018]所述檢測當前操作系統(tǒng)下已安裝的應用程序,包括:
[0019]如果檢測到所述系統(tǒng)基本存儲與所述系統(tǒng)擴展存儲未共用同一分區(qū),則檢測當前操作系統(tǒng)下已安裝的應用程序。
[0020]可選地,還包括:
[0021]通過調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從所述安裝包信息中提取所述已安裝的應用程序?qū)臉酥疚恍畔ⅲ?br> [0022]所述判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換,包括:
[0023]根據(jù)所述標志位信息判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換。
[0024]可選地,所述根據(jù)所述標志位信息判斷相關(guān)應用程序是否可被執(zhí)行存儲位置的移動,包括:
[0025]如果所述標志位信息中含有FLAG_F0RWARD_L0CK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判定相關(guān)應用程序不可被執(zhí)行存儲空間的切換。
[0026]可選地,所述在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,包括:
[0027]提供用戶界面,在所述用戶界面中展示所述可被執(zhí)行存儲空間的切換的應用程序,以及用于選擇所述待切換的目標應用程序的選擇入口 ;
[0028]將通過所述選擇入口被選擇的至少一個應用程序確定為所述待切換存儲空間的目標應用程序。
[0029]可選地,還包括:
[0030]在所述用戶界面中展示被判斷為不可切換存儲空間的應用程序,以及用于提示該應用程序存儲空間不可切換的提示信息。
[0031]可選地,還包括:
[0032]檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限,如果是,
[0033]所述判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換,包括:
[0034]申請所述最高管理員權(quán)限,以所述最高管理員權(quán)限執(zhí)行判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作;
[0035]所述調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間,包括:
[0036]以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。[0037]可選地,所述以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間,包括:
[0038]以所述最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點,調(diào)用所述最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API,將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0039]可選地,所述目標存儲空間與當前存儲空間處于不同的存儲介質(zhì);或者目標存儲空間與當前存儲空間處于同一存儲介質(zhì)的不同區(qū)域,其中所述當前存儲空間所在區(qū)域包括操作系統(tǒng)所在區(qū)域。
[0040]根據(jù)本發(fā)明的另一方面,提供了一種應用程序的存儲空間切換裝置,包括:
[0041]檢測單元,用于檢測當前操作系統(tǒng)下已安裝的應用程序;
[0042]判斷單元,用于判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;
[0043]目標確定單元,用于在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;
[0044]存儲空間切換單元,用于以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;
[0045]文件調(diào)用單元,用于當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
[0046]可選地,還包括:
[0047]系統(tǒng)信息判定單元,用于獲取所述當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換;
[0048]所述檢測單元,具體用于:
[0049]判斷當前版本的操作系統(tǒng)能夠支持應用程序存儲空間的切換后,檢測當前操作系統(tǒng)下已安裝的應用程序。
[0050]可選地,還包括:
[0051]分區(qū)檢測單元,用于檢測系統(tǒng)基本存儲與系統(tǒng)擴展存儲是否共用同一分區(qū);
[0052]所述檢測單元,具體用于:
[0053]如果檢測到所述系統(tǒng)基本存儲與所述系統(tǒng)擴展存儲未共用同一分區(qū),則檢測當前操作系統(tǒng)下已安裝的應用程序。
[0054]可選地,還包括:
[0055]標志位提取單元,用于通過調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從所述安裝包信息中提取所述已安裝的應用程序?qū)臉酥疚恍畔ⅲ?br> [0056]所述判斷單元,包括:
[0057]第一判斷子單元,用于根據(jù)所述標志位信息判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換。
[0058]可選地,所述第一判斷子單元,具體用于:
[0059]如果所述標志位信息中含有FLAG_F0RWARD_L0CK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判定相關(guān)應用程序不可被執(zhí)行存儲空間的切換。[0060]可選地,所述目標確定單元,包括:
[0061]界面提供單元,用于提供用戶界面,在所述用戶界面中展示所述可被執(zhí)行存儲空間的切換的應用程序,以及用于選擇所述待切換的目標應用程序的選擇入口 ;
[0062]目標確定子單元,將將通過所述選擇入口被選擇的至少一個應用程序確定為所述待切換存儲空間的目標應用程序。
[0063]可選地,還包括:
[0064]提示單元,在所述用戶界面中展示被判斷為不可移動的應用程序,以及用于提示該應用程序存儲位置不可移動的提示信息。
[0065]可選地,還包括:
[0066]權(quán)限檢測單元,用于檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限;所述最高管理員權(quán)限包括安卓操作系統(tǒng)下的Root根權(quán)限;
[0067]所述判斷單元,包括:
[0068]第二判斷子單元,用于申請所述最高管理員權(quán)限,以所述最高管理員權(quán)限執(zhí)行判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作;
[0069]所述存儲空間切換單元,包括:
[0070]存儲空間切換子單元,用于以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0071]可選地,所述存儲空間切換子單元,具體用于:
[0072]以所述最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點,調(diào)用所述最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API,將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0073]可選地,所述目標存儲空間與當前存儲空間處于不同的存儲介質(zhì);或者目標存儲空間與當前存儲空間處于同一存儲介質(zhì)的不同區(qū)域,其中所述當前存儲空間所在區(qū)域包括操作系統(tǒng)所在區(qū)域。
[0074]根據(jù)本發(fā)明的應用程序的存儲空間切換方法及裝置,可以檢測出可被執(zhí)行存儲空間切換的應用程序信息,并在確定了需要切換存儲空間的目標應用程序以及目標存儲空間之后,就可以直接以目標應用程序以及目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)API,以便將目標應用程序的相關(guān)文件切換到目標存儲空間。其中,在調(diào)用系統(tǒng)API的過程中,并不需要調(diào)用系統(tǒng)詳情界面,直接執(zhí)行切換操作即可,因此,可以實現(xiàn)應用程序的批量快速切換。
[0075]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】

【附圖說明】
[0076]通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0077]圖1示出了根據(jù)本發(fā)明一個實施例的方法的流程圖;以及,[0078]圖2示出了根據(jù)本發(fā)明一個實施例的裝置的示意圖。
【具體實施方式】
[0079]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。
[0080]在本發(fā)明實施例中,為了在操作系統(tǒng)中安裝了很多應用程序的情況下,避免由于太多的應用程序占用了通訊設備中過多的存儲空間,以至于影響設備運行效率,可以將已安裝的一部分應用程序轉(zhuǎn)移到其他的存儲空間(例如手機等通訊設備中,除了本地存儲之夕卜,還可能存在SD卡等存儲空間,因此,就可以將之前安裝到本地存儲空間的應用程序轉(zhuǎn)移到SD卡上,從而釋放本地存儲空間)。具體實現(xiàn)時,可以提供一款在通訊設備中運行的應用程序(為了便于描述,本發(fā)明實施例中將該應用程序稱為“手機助手”,當然手機助手還可以包含其他的功能,應用程序存儲空間切換可能僅為其眾多功能之一),如果用戶在其通訊設備中安裝了具有應用程序存儲空間切換功能的手機助手,則在用戶需要將其通訊設備中的應用程序切換到其他存儲空間(例如SD卡上)時,就可以直接打開該手機助手中的應用程序存儲空間切換功能對應的用戶界面,在該界面中選擇需要切換的應用程序。具體實現(xiàn)時,本發(fā)明實施例中,手機助手可以將當前操作系統(tǒng)中已安裝的各個可執(zhí)行程序的信息獲取到,并在列表中向用戶進行展示,用戶可以選擇一個或多個應用程序進行存儲空間的切換。具體切換時,不會調(diào)用系統(tǒng)詳情頁,而是直接調(diào)用系統(tǒng)的相關(guān)API,將選中的目標應用程序切換到目標存儲空間。這樣,可以實現(xiàn)一次性切換多個應用程序,使得切換應用程序存儲空間的靈活性及方便性得到提高。下面對具體的實現(xiàn)方式進行詳細的介紹。
[0081]參見圖1,本發(fā)明實施例首先提供了一種應用程序的存儲空間切換方法,該方法可以包括:
[0082]SlOl:檢測當前操作系統(tǒng)下已安裝的應用程序;
[0083]首先,手機助手可以檢測當前操作系統(tǒng)下已安裝了哪些應用程序。具體實現(xiàn)時,手機助手可以通過調(diào)用操作系統(tǒng)的API,來實現(xiàn)該步驟的檢測操作,操作系統(tǒng)就可以將操作系統(tǒng)中已安裝的應用程序信息返回給手機助手?;蛘?,手機助手也可以通過分析注冊表等方式來檢測當前操作系統(tǒng)下安裝了哪些應用程序。
[0084]S102:判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;
[0085]在實際應用中,有些應用程序可能不可被執(zhí)行存儲空間的切換,例如,有些應用程序是ForwardLocked的應用程序,即他的應用程序?qū)傩岳锇蠪LAG_F0RWARD_L0CK的標志位,或者,還有些應用程序是系統(tǒng)應用程序,也即應用程序?qū)傩灾邪蠪LAG_SYSTEM標志位;這些應用程序一般都是不允許進行存儲空間的切換的。因此,具體實現(xiàn)時,可以調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從安裝包信息中提取應用程序?qū)臉酥疚恍畔?,然后根?jù)這種標志位信息來判斷應用程序是否可被執(zhí)行存儲空間的切換。具體的,如果所述標志位信息中含有FLAG_F0RWARD_L0CK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判斷相關(guān)應用程序不可被執(zhí)行存儲空間的切換。換言之,對于可被執(zhí)行存儲空間切換的應用程序而言,其標志位中應該不包含F(xiàn)LAG_FORWARD_LOCK轉(zhuǎn)發(fā)鎖標志位以及FLAG_SYSTEM系統(tǒng)屬性標志位。
[0086]需要說明的是,有些版本的操作系統(tǒng)可能不支持應用程序的存儲空間切換(例如,android2.2以下版本的操作系統(tǒng),一般都不支持應用程序存儲空間的切換),因此,在執(zhí)行上述步驟SlOl以及S102之前,還可以首先獲取當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換,如果支持,再執(zhí)行本發(fā)明實施例中的各個步驟,否則,就不必執(zhí)行。
[0087]另外需要說明的是,目標存儲空間與當前存儲空間處于不同的存儲介質(zhì);或者目標存儲空間與當前存儲空間也可以處于同一存儲介質(zhì)的不同區(qū)域,其中當前存儲空間所在區(qū)域一般是指操作系統(tǒng)所在區(qū)域。其中,當前存儲空間與目標存儲空間上相對的,一般情況下,當前存儲空間可以是指系統(tǒng)基本儲存空間(例如手機中的DATA分區(qū)),目標存儲空間是指系統(tǒng)擴展存儲(例如手機外接的SD卡),也就是,將目標應用程序從DATA分區(qū)切換到SD卡。當然,反向的切換也是可以的,也即,也可以是將目標應用程序從SD卡切換到DATA分區(qū)。
[0088]當然,還有些通訊設備中,系統(tǒng)基本存儲與系統(tǒng)擴展存儲可能共用同一塊磁盤分區(qū),此時,SD卡并非通常所說的外置的可以插拔的Micro SD卡,而是系統(tǒng)模擬出來的一個SD卡,和DATA分區(qū)共用一塊磁盤空間,總空間的大小、剩余空間的大小都一樣,就好像是一個磁盤上面的兩個文件夾,任何一個文件夾把磁盤空間用滿了,另外一個文件夾也無法再存放數(shù)據(jù)了。在這種情況下,即使進行了存儲空間的切換,實際上也起不到節(jié)省通訊設備本地存儲空間的作用。因此,在執(zhí)行上述步驟SlOl以及S102之前,還可以判斷系統(tǒng)基本存儲與系統(tǒng)擴展存儲是否共用同一磁盤分區(qū),如果不是,再觸發(fā)執(zhí)行圖1中的各個步驟。
[0089]S103:在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;
[0090]在獲取到操作系統(tǒng)中可被執(zhí)行存儲空間切換的應用程序之后,手機助手可以進一步確定哪些應用程序是需要進行存儲空間切換的。具體實現(xiàn)時,手機助手可以自動從各個支持切換的應用程序中,選擇待切換存儲空間的目標應用程序,例如,從中選取占用空間比較大的一些應用程序作為待切換的目標應用程序,等等。或者,在另一種實現(xiàn)方式下,也可以為用戶提供用戶界面,當用戶通過手機助手的應用程序切換功能進入時,可以在用戶界面中展示支持應用程序存儲空間切換的應用程序,以及用于選擇待切換的目標應用程序的選擇入口,這樣,用戶就可以通過這種選擇入口,手動選擇需要進行存儲空間切換的目標應用程序,進而,手機助手就可以根據(jù)用戶的選擇操作,來確定需要進行存儲空間切換的目標應用程序。需要說明的是,具體實現(xiàn)時,還可以在用戶界面中展示被判斷為不可切換存儲空間的應用程序,以及用于提示該應用程序存儲空間不可切換的提示信息,以便用戶知曉更多的信息。
[0091]在確定了目標應用程序之后,還可以確定目標存儲空間,也即需要確定是將該目標應用程序切換到哪個目標存儲空間。具體實現(xiàn)時,可以由用戶手動為具體的目標應用程序指定目標存儲空間;或者,也可以由手機助手自動確定。例如,當前通訊設備中只有DATA區(qū)以及SD卡這樣兩個存儲空間,則根據(jù)目標應用程序當前所在的存儲空間,就可以自動將另一個存儲空間確定為目標存儲空間?;蛘?,在存在多個存儲空間的情況下,也可以預先統(tǒng)一指定目標存儲空間,等到。其中,不同的存儲空間一般具有各自的標識ID,根據(jù)這種標識ID,手機助手就可以識別出具體的目標存儲空間。
[0092]S104:以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;
[0093]S105:當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
[0094]也就是說,在本發(fā)明實施例中,可以檢測出可被執(zhí)行存儲空間切換的應用程序信息,并在確定了需要切換存儲空間的目標應用程序以及目標存儲空間之后,就可以直接以目標應用程序以及目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)API,以便將目標應用程序的相關(guān)文件切換到目標存儲空間。其中,在調(diào)用系統(tǒng)API的過程中,并不需要調(diào)用系統(tǒng)詳情界面,直接執(zhí)行切換操作即可,因此,可以實現(xiàn)應用程序的批量快速切換。
[0095]這里需要說明的是,在調(diào)用系統(tǒng)API進行應用程序存儲空間的切換時,操作系統(tǒng)會自動執(zhí)行應用程序存儲路徑的切換、注冊表修改等操作,使得切換了存儲空間后的目標應用程序能夠正常運行。具體的,當目標應用程序被啟動時,可以從目標存儲空間調(diào)用目標應用程序的相關(guān)文件,以支持目標應用程序的運行。
[0096]另外需要說明的是,在有些操作系統(tǒng)中,可能會由于用戶權(quán)限的限制,無法進行步驟S102中的判斷已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作,以及步驟S104中的調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將目標應用程序的相關(guān)文件切換到所述目標存儲空間等操作。因此,在本發(fā)明實施例中,還可以預先檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限,其中,在安卓操作系統(tǒng)下,這里的最高管理員權(quán)限一般可以是指Root根權(quán)限。如果已經(jīng)獲得最高管理員權(quán)限,則在步驟S102中可以首先申請最高管理員權(quán)限,以該最高管理員權(quán)限來執(zhí)行判斷已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作;在步驟S104中,也可以以最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將目標應用程序的相關(guān)文件切換到目標存儲空間。其中,更為具體的,步驟S104中可以以最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點(Package Manager服務的binder節(jié)點),調(diào)用最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API (例如IPackageManager接口),將目標應用程序的相關(guān)文件切換到目標存儲空間。其中,binder是Android系統(tǒng)的通信機制。這個過程可以理解為,通過非公開的API來獲取IPackageManager這個類的對象,并能夠使用其中的方法(函數(shù))。這里的通過獲取最高管理員權(quán)限的方式,還可以實現(xiàn)將一些原本不可被執(zhí)行存儲空間切換的應用程序,也能夠被切換到其他的存儲空間。
[0097]與本發(fā)明實施例提供的應用程序的存儲空間切換方法相對應,本發(fā)明實施例還提供了一種應用程序的存儲空間切換裝置,參見圖2,該裝置可以包括:
[0098]檢測單元201,用于檢測當前操作系統(tǒng)下已安裝的應用程序;
[0099]判斷單元202,用于判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;
[0100]目標確定單元203,用于在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;
[0101]存儲空間切換單元204,用于以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;
[0102]文件調(diào)用單元205,用于當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
[0103]其中,所述裝置還可以包括:
[0104]系統(tǒng)信息判定單元,用于獲取所述當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換;
[0105]所述檢測單元,具體用于:
[0106]判斷當前版本的操作系統(tǒng)能夠支持應用程序存儲空間的切換后,檢測當前操作系統(tǒng)下已安裝的應用程序。
[0107]還可以包括:
[0108]分區(qū)檢測單元,用于檢測系統(tǒng)基本存儲與系統(tǒng)擴展存儲是否共用同一分區(qū);
[0109]所述檢測單元,具體用于:
[0110]如果檢測到所述系統(tǒng)基本存儲與所述系統(tǒng)擴展存儲未共用同一分區(qū),則檢測當前操作系統(tǒng)下已安裝的應用程序。
[0111]還可以包括:
[0112]標志位提取單元,用于通過調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從所述安裝包信息中提取所述已安裝的應用程序?qū)臉酥疚恍畔ⅲ?br> [0113]所述判斷單元,包括:
[0114]第一判斷子單元,用于根據(jù)所述標志位信息判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換。
[0115]其中,所述第一判斷子單元,具體用于:
[0116]如果所述標志位信息中含有FLAG_F0RWARD_L0CK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判定相關(guān)應用程序不可被執(zhí)行存儲空間的切換。
[0117]所述目標確定單元,包括:
[0118]界面提供單元,用于提供用戶界面,在所述用戶界面中展示所述可被執(zhí)行存儲空間的切換的應用程序,以及用于選擇所述待切換的目標應用程序的選擇入口 ;
[0119]目標確定子單元,將將通過所述選擇入口被選擇的至少一個應用程序確定為所述待切換存儲空間的目標應用程序。
[0120]該裝置還可以包括:
[0121]提示單元,在所述用戶界面中展示被判斷為不可移動的應用程序,以及用于提示該應用程序存儲位置不可移動的提示信息。
[0122]另外還可以包括:
[0123]權(quán)限檢測單元,用于檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限;所述最高管理員權(quán)限包括安卓操作系統(tǒng)下的Root根權(quán)限;
[0124]所述判斷單元,包括:
[0125]第二判斷子單元,用于申請所述最高管理員權(quán)限,以所述最高管理員權(quán)限執(zhí)行判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作;[0126]所述存儲空間切換單元,包括:
[0127]存儲空間切換子單元,用于以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0128]所述存儲空間切換子單元,具體用于:
[0129]以所述最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點,調(diào)用所述最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API,將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0130]所述目標存儲空間與當前存儲空間處于不同的存儲介質(zhì);或者目標存儲空間與當前存儲空間處于同一存儲介質(zhì)的不同區(qū)域,其中所述當前存儲空間所在區(qū)域包括操作系統(tǒng)所在區(qū)域。
[0131]在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
[0132]在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
[0133]類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權(quán)利要求書由此明確地并入該【具體實施方式】,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
[0134]本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0135]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0136]本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應當理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的應用程序的存儲空間切換裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0137]應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設計出替換實施例。在權(quán)利要求中,不應將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
[0138]本申請可以應用于計算機系統(tǒng)/服務器,其可與眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置一起操作。適于與計算機系統(tǒng)/服務器一起使用的眾所周知的計算系統(tǒng)、環(huán)境和/或配置的例子包括但不限于:個人計算機系統(tǒng)、服務器計算機系統(tǒng)、瘦客戶機、厚客戶機、手持或膝上設備、基于微處理器的系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡個人電腦、小型計算機系統(tǒng)、大型計算機系統(tǒng)和包括上述任何系統(tǒng)的分布式云計算技術(shù)環(huán)境,等等。
[0139]計算機系統(tǒng)/服務器可以在由計算機系統(tǒng)執(zhí)行的計算機系統(tǒng)可執(zhí)行指令(諸如程序模塊)的一般語境下描述。通常,程序模塊可以包括例程、程序、目標程序、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等等,它們執(zhí)行特定的任務或者實現(xiàn)特定的抽象數(shù)據(jù)類型。計算機系統(tǒng)/服務器可以在分布式云計算環(huán)境中實施,分布式云計算環(huán)境中,任務是由通過通信網(wǎng)絡鏈接的遠程處理設備執(zhí)行的。在分布式云計算環(huán)境中,程序模塊可以位于包括存儲設備的本地或遠程計算系統(tǒng)存儲介質(zhì)上。
[0140]本發(fā)明還公開了 Al、一種應用程序的存儲空間切換方法,包括:
[0141]檢測當前操作系統(tǒng)下已安裝的應用程序;
[0142]判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;
[0143]在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;
[0144]以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;
[0145]當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
[0146]A2、如Al所述的方法,還包括:
[0147]獲取所述當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換;
[0148]所述檢測當前操作系統(tǒng)下已安裝的應用程序,包括:[0149]在判斷當前版本的操作系統(tǒng)能夠支持應用程序存儲空間的切換后,檢測當前操作系統(tǒng)下已安裝的應用程序。
[0150]A3、如Al所述的方法,還包括:
[0151]檢測系統(tǒng)基本存儲與系統(tǒng)擴展存儲是否共用同一分區(qū);
[0152]所述檢測當前操作系統(tǒng)下已安裝的應用程序,包括:
[0153]如果檢測到所述系統(tǒng)基本存儲與所述系統(tǒng)擴展存儲未共用同一分區(qū),則檢測當前操作系統(tǒng)下已安裝的應用程序。
[0154]A4、如Al所述的方法,還包括:
[0155]通過調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從所述安裝包信息中提取所述已安裝的應用程序?qū)臉酥疚恍畔ⅲ?br> [0156]所述判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換,包括:
[0157]根據(jù)所述標志位信息判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換。
[0158]A5、如A4所述的方法,所述根據(jù)所述標志位信息判斷相關(guān)應用程序是否可被執(zhí)行存儲位置的移動,包括:
[0159]如果所述標志位信息中含有FLAG_F0RWARD_L0CK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判定相關(guān)應用程序不可被執(zhí)行存儲空間的切換。
[0160]A6、如Al所述的方法,所述在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,包括:
[0161]提供用戶界面,在所述用戶界面中展示所述可被執(zhí)行存儲空間的切換的應用程序,以及用于選擇所述待切換的目標應用程序的選擇入口 ;
[0162]將通過所述選擇入口被選擇的至少一個應用程序確定為所述待切換存儲空間的目標應用程序。
[0163]A7、如A6所述的方法,還包括:
[0164]在所述用戶界面中展示被判斷為不可切換存儲空間的應用程序,以及用于提示該應用程序存儲空間不可切換的提示信息。
[0165]A8、如A1-A7任一項所述的方法,還包括:
[0166]檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限,如果是,
[0167]所述判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換,包括:
[0168]申請所述最高管理員權(quán)限,以所述最高管理員權(quán)限執(zhí)行判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作;
[0169]所述調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間,包括:
[0170]以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0171]A9、如AS所述的方法,所述以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間,包括:
[0172]以所述最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點,調(diào)用所述最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API,將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。[0173]A10、如Al所述的方法,所述目標存儲空間與當前存儲空間處于不同的存儲介質(zhì);或者目標存儲空間與當前存儲空間處于同一存儲介質(zhì)的不同區(qū)域,其中所述當前存儲空間所在區(qū)域包括操作系統(tǒng)所在區(qū)域。
[0174]本發(fā)明還公開了 BH、一種應用程序的存儲空間切換裝置,包括:
[0175]檢測單元,用于檢測當前操作系統(tǒng)下已安裝的應用程序;
[0176]判斷單元,用于判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換;
[0177]目標確定單元,用于在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間;
[0178]存儲空間切換單元,用于以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間;
[0179]文件調(diào)用單元,用于當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
[0180]B12、如Bll所述的裝置,還包括:
[0181]系統(tǒng)信息判定單元,用于獲取所述當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換;
[0182]所述檢測單元,具體用于:
[0183]判斷當前版本的操作系統(tǒng)能夠支持應用程序存儲空間的切換后,檢測當前操作系統(tǒng)下已安裝的應用程序。
[0184]B13、如Bll所述的裝置,還包括:
[0185]分區(qū)檢測單元,用于檢測系統(tǒng)基本存儲與系統(tǒng)擴展存儲是否共用同一分區(qū);
[0186]所述檢測單元,具體用于:
[0187]如果檢測到所述系統(tǒng)基本存儲與所述系統(tǒng)擴展存儲未共用同一分區(qū),則檢測當前操作系統(tǒng)下已安裝的應用程序。
[0188]B14、如Bll所述的裝置,還包括:
[0189]標志位提取單元,用于通過調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從所述安裝包信息中提取所述已安裝的應用程序?qū)臉酥疚恍畔ⅲ?br> [0190]所述判斷單元,包括:
[0191]第一判斷子單元,用于根據(jù)所述標志位信息判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換。
[0192]B15、如B14所述的裝置,所述第一判斷子單元,具體用于:
[0193]如果所述標志位信息中含有FLAG_F0RWARD_L0CK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判定相關(guān)應用程序不可被執(zhí)行存儲空間的切換。
[0194]所述的裝置,所述目標確定單元,包括:
[0195]界面提供單元,用于提供用戶界面,在所述用戶界面中展示所述可被執(zhí)行存儲空間的切換的應用程序,以及用于選擇所述待切換的目標應用程序的選擇入口 ;
[0196]目標確定子單元,將將通過所述選擇入口被選擇的至少一個應用程序確定為所述待切換存儲空間的目標應用程序。[0197]B17、如B16所述的裝置,還包括:
[0198]提示單元,在所述用戶界面中展示被判斷為不可移動的應用程序,以及用于提示該應用程序存儲位置不可移動的提示信息。
[0199]B18、如B11-B17任一項所述的裝置,還包括:
[0200]權(quán)限檢測單元,用于檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限;所述最高管理員權(quán)限包括安卓操作系統(tǒng)下的Root根權(quán)限;
[0201]所述判斷單元,包括:
[0202]第二判斷子單元,用于申請所述最高管理員權(quán)限,以所述最高管理員權(quán)限執(zhí)行判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作;
[0203]所述存儲空間切換單元,包括:
[0204]存儲空間切換子單元,用于以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0205]B19、如B18所述的裝置,所述存儲空間切換子單元,具體用于:
[0206]以所述最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點,調(diào)用所述最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API,將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
[0207]B20、如Bll所述的裝置,所述目標存儲空間與當前存儲空間處于不同的存儲介質(zhì);或者目標存儲空間與當前存儲空間處于同一存儲介質(zhì)的不同區(qū)域,其中所述當前存儲空間所在區(qū)域包括操作系統(tǒng)所在區(qū)域。
【權(quán)利要求】
1.一種應用程序的存儲空間切換方法,包括: 檢測當前操作系統(tǒng)下已安裝的應用程序; 判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換; 在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間; 以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間; 當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
2.如權(quán)利要求1所述的方法,還包括: 獲取所述當前操作系統(tǒng)的版本信息,根據(jù)所述版本信息判斷當前版本的操作系統(tǒng)是否支持應用程序存儲空間的切換; 所述檢測當前操作系統(tǒng)下已安裝的應用程序,包括: 在判斷當前版本的操作系統(tǒng)能夠支持應用程序存儲空間的切換后,檢測當前操作系統(tǒng)下已安裝的應用程序。
3.如權(quán)利要求1所述的方法,還包括: 檢測系統(tǒng)基本存儲與系統(tǒng)擴展 存儲是否共用同一分區(qū); 所述檢測當前操作系統(tǒng)下已安裝的應用程序,包括: 如果檢測到所述系統(tǒng)基本存儲與所述系統(tǒng)擴展存儲未共用同一分區(qū),則檢測當前操作系統(tǒng)下已安裝的應用程序。
4.如權(quán)利要求1所述的方法,還包括: 通過調(diào)用安裝包解析API解析當前操作系統(tǒng)中已安裝的應用程序?qū)陌惭b包信息,從所述安裝包信息中提取所述已安裝的應用程序?qū)臉酥疚恍畔ⅲ? 所述判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換,包括: 根據(jù)所述標志位信息判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換。
5.如權(quán)利要求4所述的方法,所述根據(jù)所述標志位信息判斷相關(guān)應用程序是否可被執(zhí)行存儲位置的移動,包括: 如果所述標志位信息中含有FLAG_FORWARD_LOCK轉(zhuǎn)發(fā)鎖標志位和/或FLAG_SYSTEM系統(tǒng)屬性標志位,則判定相關(guān)應用程序不可被執(zhí)行存儲空間的切換。
6.如權(quán)利要求1所述的方法,所述在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,包括: 提供用戶界面,在所述用戶界面中展示所述可被執(zhí)行存儲空間的切換的應用程序,以及用于選擇所述待切換的目標應用程序的選擇入口; 將通過所述選擇入口被選擇的至少一個應用程序確定為所述待切換存儲空間的目標應用程序。
7.如權(quán)利要求6所述的方法,還包括: 在所述用戶界面中展示被判斷為不可切換存儲空間的應用程序,以及用于提示該應用程序存儲空間不可切換的提示信息。
8.如權(quán)利要求1-7任一項所述的方法,還包括: 檢測當前操作系統(tǒng)登錄用戶是否獲得最高管理員權(quán)限,如果是, 所述判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換,包括: 申請所述最高管理員權(quán)限,以所述最高管理員權(quán)限執(zhí)行判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換的操作; 所述調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間,包括: 以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
9.如權(quán)利要求8所述的方法,所述以所述最高管理員權(quán)限調(diào)用該權(quán)限下的系統(tǒng)內(nèi)部API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間,包括: 以所述最高管理員權(quán)限獲取當前操作系統(tǒng)的應用程序管理服務的服務節(jié)點,調(diào)用所述最高管理員權(quán)限對應的、服務節(jié)點中的應用程序包管理接口中的系統(tǒng)內(nèi)部API,將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間。
10.一種應用程序的存儲空間切換裝置,包括: 檢測單元,用于檢 測當前操作系統(tǒng)下已安裝的應用程序; 判斷單元,用于判斷所述已安裝的應用程序是否可被執(zhí)行存儲空間的切換; 目標確定單元,用于在可被執(zhí)行存儲空間切換的應用程序中確定至少一個待切換存儲空間的目標應用程序,并確定目標存儲空間; 存儲空間切換單元,用于以所述目標應用程序以及所述目標存儲空間的標識信息為參數(shù),調(diào)用用于切換應用程序存儲空間的系統(tǒng)應用程序編程接口 API,以便將所述目標應用程序的相關(guān)文件切換到所述目標存儲空間; 文件調(diào)用單元,用于當所述目標應用程序被啟動時,從所述目標存儲空間調(diào)用所述目標應用程序的相關(guān)文件,以支持所述目標應用程序的運行。
【文檔編號】G06F9/48GK103530180SQ201310492876
【公開日】2014年1月22日 申請日期:2013年10月18日 優(yōu)先權(quán)日:2013年10月18日
【發(fā)明者】李濤, 顏冬, 王永楊 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
大田县| 梁山县| 家居| 沁源县| 灵丘县| 木兰县| 水城县| 新晃| 锡林浩特市| 固原市| 静安区| 察雅县| 广平县| 宁化县| 巢湖市| 古丈县| 吴川市| 田东县| 九龙县| 日土县| 米易县| 富蕴县| 库车县| 桃园县| 洛浦县| 精河县| 马尔康县| 绥江县| 普格县| 花垣县| 台东县| 德江县| 龙岩市| 和硕县| 贵定县| 湘乡市| 尉氏县| 大同市| 灵璧县| 从化市| 巴林右旗|