本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種界面控制方法和裝置。
背景技術(shù):
隨著智能終端的普及,越來(lái)越多用戶(hù)使用智能終端進(jìn)行學(xué)習(xí)、娛樂(lè)等等,不僅豐富用戶(hù)生活,還給用戶(hù)帶來(lái)便利,與此同時(shí)各種智能終端的應(yīng)用程序也被開(kāi)發(fā)出來(lái),以滿(mǎn)足用戶(hù)的不同應(yīng)用需求。
以基于Android系統(tǒng)的智能終端為例,正常的應(yīng)用界面啟動(dòng),都必須啟動(dòng)一個(gè)對(duì)應(yīng)的activity(界面)組件,這個(gè)activity組件會(huì)在被創(chuàng)建的時(shí)候,根據(jù)自身的界面布局文件,生成一個(gè)對(duì)應(yīng)的界面,而在系統(tǒng)管理服務(wù)中,要啟動(dòng)一個(gè)應(yīng)用界面對(duì)應(yīng)的activity組件,通常都要有一個(gè)統(tǒng)一的入口,這個(gè)入口就是ActivityManagerService(系統(tǒng)服務(wù))中的startActivity函數(shù)。
但由于Android系統(tǒng)的開(kāi)放性,系統(tǒng)對(duì)調(diào)用startActivity函數(shù)來(lái)啟動(dòng)界面時(shí),對(duì)調(diào)用者是誰(shuí),調(diào)用者在前臺(tái)后臺(tái),這些方面沒(méi)有限制,因此會(huì)有一些惡意應(yīng)用程序利用這點(diǎn)在后臺(tái)調(diào)用startActivity函數(shù)來(lái)啟動(dòng)應(yīng)用界面,例如,一些惡意應(yīng)用程序在終端屏幕上彈出某些提示框或廣告騷擾用戶(hù),惡意的廣告懸浮窗的一些鏈接信息中還攜帶有大量不安全因素,例如木馬病毒,用戶(hù)如果不小心點(diǎn)擊該鏈接信息,可能導(dǎo)致個(gè)人隱私信息等的泄露,或者電子設(shè)備操作系統(tǒng)癱瘓等,安全性較差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種界面控制方法和裝置,可以控制應(yīng)用界面的啟動(dòng)與關(guān)閉,提高終端設(shè)備的安全性。
本發(fā)明實(shí)施例提供一種界面控制方法,包括:
接收應(yīng)用界面的啟動(dòng)請(qǐng)求;
確定發(fā)起所述啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序;
判斷所述目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行;
若所述目標(biāo)應(yīng)用程序當(dāng)前不在所述終端前臺(tái)運(yùn)行,則將所述目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果;
根據(jù)所述匹配結(jié)果控制所述應(yīng)用界面的啟動(dòng)。
進(jìn)一步的,所述判斷所述目標(biāo)應(yīng)用程序當(dāng)前是否正在終端的前臺(tái)運(yùn)行的步驟具體包括:
獲取所述終端當(dāng)前正在運(yùn)行的前臺(tái)應(yīng)用程序?qū)?yīng)的前臺(tái)應(yīng)用標(biāo)識(shí),以得到前臺(tái)應(yīng)用標(biāo)識(shí)集合;
判斷所述前臺(tái)應(yīng)用標(biāo)識(shí)集合當(dāng)中是否存在與目標(biāo)應(yīng)用標(biāo)識(shí)相同的應(yīng)用標(biāo)識(shí),其中,所述目標(biāo)應(yīng)用標(biāo)識(shí)為所述目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
若存在,則確定所述目標(biāo)應(yīng)用程序當(dāng)前在所述終端的前臺(tái)運(yùn)行;
若不存在,則確定所述目標(biāo)應(yīng)用程序當(dāng)前不在所述終端的前臺(tái)運(yùn)行。
進(jìn)一步的,所述將所述目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果的步驟具體包括:
將目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)進(jìn)行比較,其中,所述目標(biāo)應(yīng)用標(biāo)識(shí)為所述目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
若所述目標(biāo)應(yīng)用標(biāo)識(shí)與所述預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)相同,則確定匹配成功;
若所述目標(biāo)應(yīng)用標(biāo)識(shí)與所述預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)不相同,則確定匹配失敗。
進(jìn)一步的,在所述接收應(yīng)用界面的啟動(dòng)請(qǐng)求之前,所述方法還包括:
獲取候選應(yīng)用程序集合中候選應(yīng)用程序的用戶(hù)行為特征信息;
根據(jù)所述用戶(hù)行為特征信息從所述候選應(yīng)用程序集合中選取出預(yù)設(shè)應(yīng)用程序;
獲取所述預(yù)設(shè)應(yīng)用程序?qū)?yīng)的預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
進(jìn)一步的,所述根據(jù)所述匹配結(jié)果控制所述應(yīng)用界面的啟動(dòng)的步驟具體包括:
若所述匹配結(jié)果為匹配失敗,則阻止所述應(yīng)用界面的啟動(dòng);
若所述匹配結(jié)果為匹配成功,則啟動(dòng)所述應(yīng)用界面。
進(jìn)一步的,在所述阻止所述應(yīng)用界面的啟動(dòng)請(qǐng)求之后,所述方法還包括:
根據(jù)所述目標(biāo)應(yīng)用標(biāo)識(shí)生成提示信息,所述提示信息攜帶所述目標(biāo)應(yīng)用標(biāo)識(shí);
將所述提示信息顯示至所述終端的屏幕。
本發(fā)明實(shí)施例還提供了一種屏幕控制裝置,包括:接收模塊、應(yīng)用確定模塊、判斷模塊、匹配模塊以及處理模塊;
所述接收模塊,用于接收應(yīng)用界面的啟動(dòng)請(qǐng)求;
所述應(yīng)用確定模塊,用于確定發(fā)起所述啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序;
所述判斷模塊,用于判斷所述目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行;
所述匹配模塊,用于當(dāng)所述判斷模塊判斷所述目標(biāo)應(yīng)用程序當(dāng)前不在所述終端前臺(tái)運(yùn)行時(shí),將所述目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果;
所述處理模塊,用于根據(jù)所述匹配結(jié)果控制所述應(yīng)用界面的啟動(dòng)。
進(jìn)一步的,所述判斷模塊具體包括:獲取子模塊和第一判斷子模塊;
所述獲取子模塊,用于獲取所述終端當(dāng)前正在運(yùn)行的前臺(tái)應(yīng)用程序?qū)?yīng)的前臺(tái)應(yīng)用標(biāo)識(shí),以得到前臺(tái)應(yīng)用標(biāo)識(shí)集合;
所述第一判斷子模塊,用于判斷所述前臺(tái)應(yīng)用標(biāo)識(shí)集合當(dāng)中是否存在與目標(biāo)應(yīng)用標(biāo)識(shí)相同的應(yīng)用標(biāo)識(shí),其中,所述目標(biāo)應(yīng)用標(biāo)識(shí)為所述目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),若存在,則確定所述目標(biāo)應(yīng)用程序當(dāng)前在所述終端的前臺(tái)運(yùn)行,若不存在,則確定所述目標(biāo)應(yīng)用程序當(dāng)前不在所述終端的前臺(tái)運(yùn)行。
進(jìn)一步的,所述匹配模塊,具體用于將目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)進(jìn)行比較,其中,所述目標(biāo)應(yīng)用標(biāo)識(shí)為所述目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),若所述目標(biāo)應(yīng)用標(biāo)識(shí)與所述預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)相同,則確定匹配成功,若所述目標(biāo)應(yīng)用標(biāo)識(shí)與所述預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)不相同,則確定匹配失敗。
進(jìn)一步的,所述裝置還包括:特征獲取模塊、選取模塊以及標(biāo)識(shí)獲取模塊;
所述特征獲取模塊,用于在所述接收模塊接收應(yīng)用界面的啟動(dòng)請(qǐng)求之前,獲取候選應(yīng)用程序集合中候選應(yīng)用程序的用戶(hù)行為特征信息;
所述選取模塊,用于根據(jù)所述用戶(hù)行為特征信息從所述候選應(yīng)用程序集合中選取出預(yù)設(shè)應(yīng)用程序;
所述標(biāo)識(shí)獲取模塊,用于獲取所述預(yù)設(shè)應(yīng)用程序?qū)?yīng)的預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
本發(fā)明實(shí)施例首先接收應(yīng)用界面的啟動(dòng)請(qǐng)求,確定發(fā)起該啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序,判斷目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行,若目標(biāo)應(yīng)用程序當(dāng)前不在終端前臺(tái)運(yùn)行,則將目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果,根據(jù)匹配結(jié)果控制應(yīng)用界面的啟動(dòng);本方案可以確定發(fā)起應(yīng)用界面啟動(dòng)的后臺(tái)應(yīng)用程序,并對(duì)該應(yīng)用界面的啟動(dòng)進(jìn)行控制,能夠防止惡意應(yīng)用程序在后臺(tái)啟動(dòng)應(yīng)用界面,攔截了不需要的彈窗界面,從而使終端的安全性大大提高。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例一提供的一種界面控制方法的流程示意圖;
圖2為本發(fā)明實(shí)施例二提供的一種手機(jī)界面控制方法的流程示意圖;
圖3為本發(fā)明實(shí)施例三提供的一種手機(jī)界面控制裝置的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實(shí)施例三提供的第二種手機(jī)界面控制裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實(shí)施例提供一種界面控制方法和裝置。以下將分別進(jìn)行詳細(xì)說(shuō)明。
實(shí)施例一、
本實(shí)施例將從界面控制裝置的角度進(jìn)行描述,該界面控制裝置具體可以集成在終端中,該終端可以為移動(dòng)互聯(lián)網(wǎng)設(shè)備(如智能手機(jī)、平板電腦)、智能穿戴設(shè)備(如智能手表)等各類(lèi)電子設(shè)備。
請(qǐng)參閱圖1,圖1為本發(fā)明實(shí)施例一提供的一種界面控制方法的流程示意圖,本實(shí)施例的界面控制方法包括:
步驟S101,接收應(yīng)用界面的啟動(dòng)請(qǐng)求。
具體的,該應(yīng)用界面的啟動(dòng)請(qǐng)求可以有多種生成方式,比如用戶(hù)通過(guò)點(diǎn)擊終端桌面圖標(biāo)來(lái)生成啟動(dòng)請(qǐng)求,或者終端受到某種操作相應(yīng)時(shí)自動(dòng)生成啟動(dòng)請(qǐng)求,比如鬧鐘、音樂(lè)提醒、運(yùn)動(dòng)提醒等,還可以通過(guò)某些后臺(tái)應(yīng)用程序來(lái)生成啟動(dòng)請(qǐng)求。
比如,在終端的后臺(tái)中運(yùn)行QQ時(shí),若QQ接收到消息,則可以根據(jù)該QQ消息生成應(yīng)用界面的啟動(dòng)請(qǐng)求,該啟動(dòng)請(qǐng)求用于生成消息界面并顯示在終端的屏幕上,
步驟S102,確定發(fā)起啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序。
具體的,本實(shí)施例獲取發(fā)起上述啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序的方法可以有多種,比如獲取上述啟動(dòng)請(qǐng)求,并提取該啟動(dòng)請(qǐng)求的屬性信息,其中,該屬性信息可以包括應(yīng)用界面的調(diào)用者,即發(fā)起應(yīng)用界面啟動(dòng)請(qǐng)求的應(yīng)用程序,也可以包括應(yīng)用界面的被調(diào)用者,即要啟動(dòng)的應(yīng)用界面對(duì)應(yīng)的應(yīng)用程序,則上述確定發(fā)起啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序的步驟可以具體包括:
提取上述啟動(dòng)請(qǐng)求的屬性信息;
根據(jù)上述屬性信息確定發(fā)起啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序。
比如,上面舉例的QQ消息彈窗啟動(dòng)請(qǐng)求所對(duì)應(yīng)的目標(biāo)應(yīng)用程序即為騰訊QQ。當(dāng)然,當(dāng)某一個(gè)應(yīng)用程序A需要調(diào)起或顯示一個(gè)可視化應(yīng)用界面a時(shí),該應(yīng)用界面a可以是應(yīng)用程序A的界面,也可以是其他應(yīng)用程序比如應(yīng)用程序B的界面;同樣的,應(yīng)用界面啟動(dòng)請(qǐng)求中的應(yīng)用界面a可能是由與該應(yīng)用界面對(duì)應(yīng)的應(yīng)用程序A發(fā)起的,也可能是由其他應(yīng)用程序比如應(yīng)用程序B來(lái)發(fā)起的。
步驟S103,判斷上述目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行,若是,則執(zhí)行步驟S106,若否,則執(zhí)行步驟S104。
具體的,可以先獲取當(dāng)前正在終端前臺(tái)運(yùn)行的應(yīng)用程序,需要說(shuō)明的是,當(dāng)前在終端前臺(tái)運(yùn)行的應(yīng)用程序可以為一個(gè)應(yīng)用程序,也可以為多個(gè)應(yīng)用程序(比如將手機(jī)分屏操作以同時(shí)運(yùn)行多個(gè)應(yīng)用程序),判斷上述目標(biāo)應(yīng)用程序是否與當(dāng)前正在終端前臺(tái)運(yùn)行的應(yīng)用程序相同或與當(dāng)前正在終端前臺(tái)運(yùn)行的多個(gè)應(yīng)用程序中的一個(gè)相同。
進(jìn)一步的,上述步驟可以通過(guò)目標(biāo)應(yīng)用程序的應(yīng)用標(biāo)識(shí)和當(dāng)前運(yùn)行的應(yīng)用程序的應(yīng)用標(biāo)識(shí)進(jìn)行對(duì)比,并根據(jù)對(duì)比結(jié)果判斷目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行,其中,該應(yīng)用標(biāo)識(shí)可以為應(yīng)用程序的屬性信息,比如應(yīng)用程序名稱(chēng)、安裝路徑信息等等,也即,上述判斷目標(biāo)應(yīng)用程序當(dāng)前是否正在終端的前臺(tái)運(yùn)行的步驟可以具體包括:
獲取終端當(dāng)前正在運(yùn)行的前臺(tái)應(yīng)用程序?qū)?yīng)的前臺(tái)應(yīng)用標(biāo)識(shí),以得到前臺(tái)應(yīng)用標(biāo)識(shí)集合;
判斷前臺(tái)應(yīng)用標(biāo)識(shí)集合當(dāng)中是否存在與目標(biāo)應(yīng)用標(biāo)識(shí)相同的應(yīng)用標(biāo)識(shí),其中,該目標(biāo)應(yīng)用標(biāo)識(shí)為目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
若存在,則確定目標(biāo)應(yīng)用程序當(dāng)前在終端的前臺(tái)運(yùn)行;
若不存在,則確定目標(biāo)應(yīng)用程序當(dāng)前不在終端的前臺(tái)運(yùn)行。
步驟S104,將目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果。
具體的,可以判斷該目標(biāo)應(yīng)用程序的目標(biāo)應(yīng)用標(biāo)識(shí)是否與預(yù)設(shè)應(yīng)用標(biāo)識(shí)相同,或者與多個(gè)預(yù)設(shè)應(yīng)用標(biāo)識(shí)中的一個(gè)相同,若是,則確定該目標(biāo)應(yīng)用程序?yàn)轭A(yù)設(shè)應(yīng)用程序,也即所述將所述目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果的步驟具體包括:
將目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)進(jìn)行比較,其中,目標(biāo)應(yīng)用標(biāo)識(shí)為所述目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí);
若目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)相同,則確定匹配成功;
若目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)不相同,則確定匹配失敗。
其中,上述預(yù)設(shè)應(yīng)用程序的標(biāo)識(shí)可以為終端根據(jù)用戶(hù)使用的特征信息自動(dòng)生成,也可以為根據(jù)用戶(hù)設(shè)置來(lái)生成,比如根據(jù)用戶(hù)使用終端的特征信息來(lái)自動(dòng)生成預(yù)設(shè)應(yīng)用標(biāo)識(shí),即在接收應(yīng)用界面的啟動(dòng)請(qǐng)求之前,本方法還可以包括:
獲取終端中多個(gè)應(yīng)用程序的用戶(hù)行為特征信息;
根據(jù)用戶(hù)行為特征信息從多個(gè)應(yīng)用程序中確定預(yù)設(shè)應(yīng)用程序;
獲取預(yù)設(shè)應(yīng)用程序?qū)?yīng)的預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
其中,上述用戶(hù)特征信息可以為用戶(hù)的使用習(xí)慣,比如為在一時(shí)間段內(nèi)終端中應(yīng)用程序的啟動(dòng)次數(shù),應(yīng)用程序的運(yùn)行時(shí)長(zhǎng)等等,以上述用戶(hù)行為特征信息為應(yīng)用程序的啟動(dòng)次數(shù)為例,可以獲取在一段預(yù)設(shè)時(shí)間段內(nèi)啟動(dòng)次數(shù)大于預(yù)設(shè)閾值的應(yīng)用程序即為預(yù)設(shè)應(yīng)用程序,提取該預(yù)設(shè)應(yīng)用程序的預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
在其他實(shí)施例當(dāng)中,上述預(yù)設(shè)應(yīng)用標(biāo)識(shí)也可以根據(jù)用戶(hù)設(shè)置生成的,也即在上述接收應(yīng)用界面的啟動(dòng)請(qǐng)求之前,本方法還可以包括:
接收用戶(hù)設(shè)置請(qǐng)求,該用戶(hù)設(shè)置請(qǐng)求指示預(yù)設(shè)應(yīng)用標(biāo)識(shí)信息;
根據(jù)上述預(yù)設(shè)應(yīng)用標(biāo)識(shí)信息確定預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
步驟S105,根據(jù)匹配結(jié)果控制所述應(yīng)用界面的啟動(dòng)。
在本發(fā)明實(shí)施例中,上述根據(jù)匹配結(jié)果控制所述應(yīng)用界面的啟動(dòng)的步驟可以具體包括:
若匹配結(jié)果為匹配失敗,則阻止應(yīng)用界面的啟動(dòng);
若匹配結(jié)果為匹配成功,則啟動(dòng)所述應(yīng)用界面。
比如,若上述預(yù)設(shè)應(yīng)用程序?yàn)樵试S啟動(dòng)應(yīng)用界面的應(yīng)用程序,預(yù)設(shè)應(yīng)用標(biāo)識(shí)也即應(yīng)用程序“白名單”,若判斷目標(biāo)應(yīng)用程序的應(yīng)用標(biāo)識(shí)不在該“白名單”中,則阻止上述應(yīng)用界面的啟動(dòng),比如攔截或忽略上述應(yīng)用界面啟動(dòng)請(qǐng)求。
可選的,在其他的實(shí)施例中,上述預(yù)設(shè)應(yīng)用程序還可以為不允許啟動(dòng)應(yīng)用界面的應(yīng)用程序,預(yù)設(shè)應(yīng)用標(biāo)識(shí)也即應(yīng)用程序“黑名單”,若判斷目標(biāo)應(yīng)用程序的應(yīng)用標(biāo)識(shí)在該“黑名單”中,則阻止上述應(yīng)用界面的啟動(dòng)請(qǐng)求。
優(yōu)選的,在上述阻止應(yīng)用界面啟動(dòng)的步驟之后,還可以生成提示信息,該提示信息包含目標(biāo)應(yīng)用程序的標(biāo)識(shí)信息,并顯示至終端的顯示屏上,比如,通過(guò)消息框或在狀態(tài)欄上面進(jìn)行顯示,也即在阻止應(yīng)用界面的啟動(dòng)之后,本方法還可以包括:
根據(jù)目標(biāo)應(yīng)用標(biāo)識(shí)生成提示信息,提示信息攜帶目標(biāo)應(yīng)用標(biāo)識(shí);
將提示信息顯示至終端的屏幕。
步驟S106,不做進(jìn)一步處理,也即允許上述啟動(dòng)請(qǐng)求來(lái)啟動(dòng)應(yīng)用界面。
可選的,本發(fā)明實(shí)施例提供的方法還可以設(shè)置一個(gè)控制開(kāi)關(guān),用于控制上述界面控制功能的開(kāi)關(guān),可以由用戶(hù)自由進(jìn)行選擇,為本方案增加了靈活性。
由上可知,本發(fā)明實(shí)施例采用接收應(yīng)用界面的啟動(dòng)請(qǐng)求,確定發(fā)起該啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序,判斷目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行,若目標(biāo)應(yīng)用程序當(dāng)前不在終端前臺(tái)運(yùn)行,則將目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果,根據(jù)匹配結(jié)果控制應(yīng)用界面的啟動(dòng);本方案可以確定發(fā)起應(yīng)用界面啟動(dòng)的后臺(tái)應(yīng)用程序,并對(duì)該應(yīng)用界面的啟動(dòng)進(jìn)行控制,能夠防止惡意應(yīng)用程序在后臺(tái)啟動(dòng)應(yīng)用界面,攔截了不需要的彈窗界面,從而使終端的安全性大大提高,使用戶(hù)又有較好的體驗(yàn)。
實(shí)施例二、
本實(shí)施例將在實(shí)施例一的基礎(chǔ)上,以智能手機(jī)為例,針對(duì)通過(guò)調(diào)用startActivity函數(shù)來(lái)啟動(dòng)界面這種情況,對(duì)本發(fā)明提供的界面控制方法做進(jìn)一步描述,請(qǐng)參考圖2,本實(shí)施例提供的界面控制方法包括:
步驟S201,智能手機(jī)接收應(yīng)用界面啟動(dòng)請(qǐng)求。
其中,該應(yīng)用界面的啟動(dòng)請(qǐng)求可以有多種生成方式,比如用戶(hù)通過(guò)點(diǎn)擊智能手機(jī)桌面圖標(biāo)來(lái)生成啟動(dòng)請(qǐng)求,或者手機(jī)受到某種操作相應(yīng)時(shí)自動(dòng)生成啟動(dòng)請(qǐng)求,比如鬧鐘、音樂(lè)提醒、運(yùn)動(dòng)提醒等,還可以通過(guò)某些后臺(tái)應(yīng)用程序來(lái)生成啟動(dòng)請(qǐng)求。
步驟S202,通過(guò)進(jìn)程入口函數(shù)startActivity獲取該啟動(dòng)請(qǐng)求的調(diào)用者包名。
其中,上述調(diào)用者包名即為實(shí)施例一當(dāng)中的目標(biāo)應(yīng)用標(biāo)識(shí),比如,智能終端系統(tǒng)在系統(tǒng)服務(wù)ActivityManagerService中的startActivity函數(shù)前后增加應(yīng)用界面啟動(dòng)檢測(cè)機(jī)制,應(yīng)用界面啟動(dòng)檢測(cè)機(jī)制能獲取啟動(dòng)進(jìn)程入口函數(shù)startActivity的caller、callingPackage、intent等類(lèi)型參數(shù),獲取到調(diào)用者包名、被調(diào)用者包名、即將要啟動(dòng)的界面組件名稱(chēng)等等,其中,上述調(diào)用者為觸發(fā)啟動(dòng)應(yīng)用界面的應(yīng)用程序,被調(diào)用者為應(yīng)用界面所屬于的應(yīng)用程序。
步驟S203,判斷上述調(diào)用者包名與前臺(tái)應(yīng)用包名是否相同,若否,則執(zhí)行步驟S204,若是,則執(zhí)行步驟S206。
具體的,上述應(yīng)用界面啟動(dòng)檢測(cè)機(jī)制,首先通過(guò)ActivityManagerService系統(tǒng)服務(wù)獲取到當(dāng)前在前臺(tái)的應(yīng)用包名,然后與當(dāng)前要啟動(dòng)的界面的調(diào)用者包名進(jìn)行比較,如果相同,則判斷上述請(qǐng)求是前臺(tái)啟動(dòng)界面請(qǐng)求,這時(shí),允許啟動(dòng);否則,判斷是后臺(tái)啟動(dòng)界面請(qǐng)求,需要進(jìn)一步判斷。
步驟S204,判斷調(diào)用應(yīng)用程序是否在白名單當(dāng)中,若否,則執(zhí)行步驟S205,若是,則執(zhí)行步驟S206。
具體的,可以根據(jù)上述調(diào)用者包名確定調(diào)用應(yīng)用程序。上述白名單為不受限制的應(yīng)用名單,可以根據(jù)用戶(hù)的使用習(xí)慣來(lái)設(shè)置白名單,該使用習(xí)慣可以為在一時(shí)間段內(nèi)終端中應(yīng)用程序的啟動(dòng)次數(shù),應(yīng)用程序的運(yùn)行時(shí)長(zhǎng)等等,以上述用戶(hù)行為特征信息為應(yīng)用程序的啟動(dòng)次數(shù)為例,可以獲取在一段預(yù)設(shè)時(shí)間段內(nèi)啟動(dòng)次數(shù)大于預(yù)設(shè)閾值的應(yīng)用程序,提取該應(yīng)用程序的應(yīng)用標(biāo)識(shí),根據(jù)該應(yīng)用標(biāo)識(shí)確定白名單。即上述接收應(yīng)用界面的啟動(dòng)請(qǐng)求之前,本方法還包括:
獲取候選應(yīng)用程序集合中候選應(yīng)用程序的用戶(hù)行為特征信息;
根據(jù)用戶(hù)行為特征信息從候選應(yīng)用程序集合中選取出預(yù)設(shè)應(yīng)用程序;
獲取預(yù)設(shè)應(yīng)用程序?qū)?yīng)的預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
步驟S205,智能手機(jī)阻止上述應(yīng)用界面的啟動(dòng)。
優(yōu)選的,當(dāng)應(yīng)用界面啟動(dòng)檢測(cè)機(jī)制拒絕后臺(tái)啟動(dòng)界面的請(qǐng)求時(shí),如果調(diào)用者需要得到返回值,可以對(duì)調(diào)用者返回請(qǐng)求被拒絕信息,防止系統(tǒng)或應(yīng)用阻塞;另外,對(duì)拒絕通過(guò)的后臺(tái)界面啟動(dòng)請(qǐng)求,可以打印log并上報(bào)系統(tǒng)服務(wù)ActivityManagerService,智能終端系統(tǒng)方面可以知道后臺(tái)界面啟動(dòng)請(qǐng)求動(dòng)作是被應(yīng)用界面啟動(dòng)檢測(cè)機(jī)制所攔截。
可選的,在其他的實(shí)施例中,還可以設(shè)置黑名單,該黑名單為不允許啟動(dòng)應(yīng)用界面的應(yīng)用程序,若判斷目標(biāo)應(yīng)用程序的應(yīng)用標(biāo)識(shí)在該“黑名單”中,則阻止上述應(yīng)用界面的啟動(dòng)請(qǐng)求
步驟S206,不做進(jìn)一步處理,也即允許上述啟動(dòng)請(qǐng)求來(lái)啟動(dòng)應(yīng)用界面。
具體的,當(dāng)步驟S203當(dāng)中判斷調(diào)用者包名與前臺(tái)應(yīng)用包名相同時(shí),也即該調(diào)用應(yīng)用程序正在前臺(tái)運(yùn)行時(shí),允許上述啟動(dòng)請(qǐng)求來(lái)啟動(dòng)應(yīng)用界面;或者在步驟S204當(dāng)中確定調(diào)用應(yīng)用程序在白名單中,也可以允許上述啟動(dòng)請(qǐng)求來(lái)啟動(dòng)應(yīng)用界面。
步驟S207,智能手機(jī)通過(guò)狀態(tài)欄生成提示信息通知用戶(hù)。
在上述阻止應(yīng)用界面啟動(dòng)的步驟之后,還可以生成提示信息,該提示信息包含目標(biāo)應(yīng)用程序的標(biāo)識(shí)信息,并顯示至終端的顯示屏上,比如系統(tǒng)可以通過(guò)狀態(tài)欄通知或toast提示用戶(hù)知曉。
可選的,本發(fā)明實(shí)施例提供的方法還可以設(shè)置一個(gè)控制開(kāi)關(guān),用于控制上述界面控制功能的開(kāi)關(guān),由用戶(hù)自由進(jìn)行選擇,為本方案增加了靈活性。
由上可知,本發(fā)明實(shí)施例采用智能手機(jī)接收應(yīng)用界面啟動(dòng)請(qǐng)求,通過(guò)進(jìn)程入口函數(shù)startActivity獲取該啟動(dòng)請(qǐng)求的調(diào)用者包名,判斷上述調(diào)用者包名與前臺(tái)應(yīng)用包名是否相同,若否,則判斷調(diào)用應(yīng)用程序是否在白名單當(dāng)中,若判斷調(diào)用應(yīng)用程序不在上述白名單當(dāng)中,則智能手機(jī)阻止應(yīng)用界面的啟動(dòng),并通過(guò)狀態(tài)欄生成提示信息通知用戶(hù);本方案可以確定發(fā)起應(yīng)用界面啟動(dòng)的后臺(tái)應(yīng)用程序,并對(duì)該應(yīng)用界面的啟動(dòng)進(jìn)行控制,能夠防止惡意應(yīng)用程序在后臺(tái)啟動(dòng)應(yīng)用界面,攔截了不需要的彈窗界面,從而使終端的安全性大大提高,使用戶(hù)又有較好的體驗(yàn)。
實(shí)施例三、
為了更好地實(shí)施以上方法,本發(fā)明實(shí)施例將在上述方法基礎(chǔ)上提供一種界面控制裝置,該界面控制裝置具體可以集成在終端中,該終端可以為移動(dòng)互聯(lián)網(wǎng)設(shè)備(如智能手機(jī)、平板電腦)、智能穿戴設(shè)備(如智能手表)等各類(lèi)電子設(shè)備。
請(qǐng)參閱圖3,該界面控制裝置包括:接收模塊301、應(yīng)用確定模塊302、判斷模塊303、匹配模塊304以及處理模塊305,如下:
該接收模塊301,用于接收應(yīng)用界面的啟動(dòng)請(qǐng)求;
該應(yīng)用確定模塊302,用于確定發(fā)起啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序;
該判斷模塊303,用于判斷目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行;
該匹配模塊304,用于當(dāng)判斷模塊303判斷目標(biāo)應(yīng)用程序當(dāng)前不在終端前臺(tái)運(yùn)行時(shí),將目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果;
該處理模塊305,用于根據(jù)上述匹配結(jié)果控制應(yīng)用界面的啟動(dòng)。
其中,上述處理模塊305,具體用于當(dāng)匹配模塊304匹配失敗時(shí),阻止應(yīng)用界面的啟動(dòng),當(dāng)匹配模塊304匹配成功時(shí),啟動(dòng)應(yīng)用界面。
其中,上述判斷模塊303具體包括:獲取子模塊和第一判斷子模塊;
該獲取子模塊,用于獲取終端當(dāng)前正在運(yùn)行的前臺(tái)應(yīng)用程序?qū)?yīng)的前臺(tái)應(yīng)用標(biāo)識(shí),以得到前臺(tái)應(yīng)用標(biāo)識(shí)集合;
該第一判斷子模塊,用于判斷前臺(tái)應(yīng)用標(biāo)識(shí)集合當(dāng)中是否存在與目標(biāo)應(yīng)用標(biāo)識(shí)相同的應(yīng)用標(biāo)識(shí),其中,目標(biāo)應(yīng)用標(biāo)識(shí)為目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),若存在,則確定目標(biāo)應(yīng)用程序當(dāng)前在終端的前臺(tái)運(yùn)行,若不存在,則確定目標(biāo)應(yīng)用程序當(dāng)前不在終端的前臺(tái)運(yùn)行。
上述匹配模塊304,具體用于將目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)進(jìn)行比較,其中,目標(biāo)應(yīng)用標(biāo)識(shí)為目標(biāo)應(yīng)用程序?qū)?yīng)的應(yīng)用標(biāo)識(shí),若目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)相同,則確定匹配成功,若目標(biāo)應(yīng)用標(biāo)識(shí)與預(yù)設(shè)應(yīng)用程序的應(yīng)用標(biāo)識(shí)不相同,則確定匹配失敗。
優(yōu)選的,請(qǐng)參閱圖4,本發(fā)明實(shí)施例提供的界面控制裝置還可以包括:特征獲取模塊306、選取模塊307以及標(biāo)識(shí)獲取模塊308;
該特征獲取模塊306,用于在接收模塊接收應(yīng)用界面的啟動(dòng)請(qǐng)求之前,獲取候選應(yīng)用程序集合中候選應(yīng)用程序的用戶(hù)行為特征信息;
該選取模塊307,用于根據(jù)用戶(hù)行為特征信息從候選應(yīng)用程序集合中選取出預(yù)設(shè)應(yīng)用程序;
該標(biāo)識(shí)獲取模塊308,用于獲取預(yù)設(shè)應(yīng)用程序?qū)?yīng)的預(yù)設(shè)應(yīng)用標(biāo)識(shí)。
進(jìn)一步的,該裝置還可以包括:生成模塊309以及顯示模塊310;
該生成模塊309,用于在處理模塊阻止應(yīng)用界面的啟動(dòng)之后,根據(jù)目標(biāo)應(yīng)用標(biāo)識(shí)生成提示信息,提示信息攜帶目標(biāo)應(yīng)用標(biāo)識(shí)。
顯示模塊310,用于將提示信息顯示至終端的屏幕。
由上可知,本發(fā)明實(shí)施例采用接收模塊301接收應(yīng)用界面的啟動(dòng)請(qǐng)求,由應(yīng)用確定模塊302獲取發(fā)起該啟動(dòng)請(qǐng)求的目標(biāo)應(yīng)用程序,判斷模塊303判斷目標(biāo)應(yīng)用程序當(dāng)前是否在終端的前臺(tái)運(yùn)行,若目標(biāo)應(yīng)用程序當(dāng)前不在終端前臺(tái)運(yùn)行,則由匹配模塊304將目標(biāo)應(yīng)用程序與預(yù)設(shè)應(yīng)用程序進(jìn)行匹配,以得到匹配結(jié)果,處理模塊305根據(jù)上述匹配結(jié)果控制應(yīng)用界面的啟動(dòng);本方案可以確定發(fā)起應(yīng)用界面啟動(dòng)的后臺(tái)應(yīng)用程序,并對(duì)該應(yīng)用界面的啟動(dòng)進(jìn)行控制,能夠防止惡意應(yīng)用程序在后臺(tái)啟動(dòng)應(yīng)用界面,攔截了不需要的彈窗界面,從而使終端的安全性大大提高,使用戶(hù)又有較好的體驗(yàn)。
具體實(shí)施時(shí),以上各個(gè)模塊可以作為獨(dú)立的實(shí)體來(lái)實(shí)現(xiàn),也可以進(jìn)行任意組合,作為同一或若干個(gè)實(shí)體來(lái)實(shí)現(xiàn),以上各個(gè)模塊的具體實(shí)施可參見(jiàn)前面的方法實(shí)施例,在此不再贅述。
需要說(shuō)明的是,本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,該程序可以存儲(chǔ)于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如存儲(chǔ)在終端的存儲(chǔ)器中,并被該終端內(nèi)的至少一個(gè)處理器執(zhí)行,在執(zhí)行過(guò)程中可包括如信息發(fā)布方法的實(shí)施例的流程。其中,存儲(chǔ)介質(zhì)可以包括:只讀存儲(chǔ)器(ROM,Read Only Memory)、隨機(jī)存取記憶體(RAM,Random Access Memory)、磁盤(pán)或光盤(pán)等。
以上對(duì)本發(fā)明實(shí)施例提供的一種界面控制方法和裝置進(jìn)行了詳細(xì)介紹,其各功能模塊可以集成在一個(gè)處理芯片中,也可以是各個(gè)模塊單獨(dú)物理存在,也可以?xún)蓚€(gè)或兩個(gè)以上模塊集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。