后,上述方法還包括:
[0034]步驟S122,如果檢測到任意一個已鎖定的應(yīng)用程序被訪問時,對鎖定密碼進行驗證。
[0035]在一種可選的方案中,當(dāng)用戶通過新建OnCreateO階段或重新生成OnResume ()階段啟動被鎖定的應(yīng)用程序,會調(diào)用鎖輸入界面,只有輸入正確的密碼之后才能進入應(yīng)用,并且無需重新加載應(yīng)用程序,保存了應(yīng)用程序原有的操作狀態(tài)。
[0036]例如,仍以終端是安卓系統(tǒng)設(shè)備為例,對本申請上述實施例進行詳細(xì)描述。當(dāng)用戶訪問鎖定的QQ應(yīng)用程序的時候,安卓系統(tǒng)設(shè)備調(diào)用鎖輸入界面,用戶輸入的密碼123654,對用戶輸入的密碼進行驗證。
[0037]步驟S124,如果驗證鎖定密碼成功,則對任意一個已鎖定的應(yīng)用程序解鎖成功,或?qū)λ幸焰i定的應(yīng)用程序解鎖成功。
[0038]在一種可選的方案中,如果鎖定標(biāo)志位是單獨設(shè)定的鎖標(biāo)志位變量,則將該應(yīng)用程序解鎖成功,其他應(yīng)用程序仍然被鎖定,需要輸入正確的密碼才能被解鎖,用戶只能訪問被解鎖成功的應(yīng)用程序;如果鎖定標(biāo)志位是共享的鎖標(biāo)志位變量,則將所有鎖定的應(yīng)用程序解鎖成功,用戶可以連續(xù)訪問多個應(yīng)用程序。當(dāng)用戶輸入正確的密碼之后,用戶可以正常使用所有的應(yīng)用程序,并在下一次短按電源鍵將所有的應(yīng)用程序進行鎖定。由于操作簡單,不會影響用戶體驗,同時也提高了系統(tǒng)的安全性。
[0039]例如,以終端是安卓系統(tǒng)設(shè)備,鎖定標(biāo)志位是共享的鎖標(biāo)志位變量為例,對本申請上述實施例進行詳細(xì)描述。當(dāng)驗證用戶輸入的密碼123654與鎖定密碼相同,驗證鎖定密碼成功,則QQ,微信和相冊均解鎖成功。
[0040]根據(jù)本申請上述實施例,在步驟S124,驗證鎖定密碼成功之后,上述方法還包括:
[0041]步驟S126,將任意一個已鎖定的應(yīng)用程序的鎖定標(biāo)志位設(shè)置為解鎖狀態(tài),或?qū)⑺幸焰i定的應(yīng)用程序的共享的鎖定標(biāo)志位設(shè)置為解鎖狀態(tài)。
[0042]在一種可選的方案中,用戶輸入正確的密碼之后,如果鎖定標(biāo)志位是單獨設(shè)定的鎖標(biāo)志位變量,則將用戶訪問的應(yīng)用程序的鎖標(biāo)志位變量isLock的值修改為false,其他已鎖定的應(yīng)用程序的鎖標(biāo)志位變量isLock的值仍然是true ;如果鎖定標(biāo)志位是共享的鎖標(biāo)志位變量,則將共享的鎖標(biāo)志位變量isLock的值修改為false。
[0043]此處需要說明的是,從用戶體驗角度來說,在鎖標(biāo)志位變量共享的情況下,當(dāng)不管用戶設(shè)置了多少應(yīng)用為訪問限制應(yīng)用,用戶想連續(xù)使用多款訪問限制應(yīng)用的時候,只需要輸入一次正確的密碼即可訪問所有的訪問限制應(yīng)用;在鎖標(biāo)志位變量獨立的情況下,當(dāng)用戶設(shè)置了大量應(yīng)用為訪問限制應(yīng)用,用戶想連續(xù)使用多款訪問限制應(yīng)用的時候,需要對每一款應(yīng)用各輸入一次正確的密碼才能使用該款應(yīng)用,即是一個應(yīng)用輸入一次正確即可解鎖該應(yīng)用,別的應(yīng)用仍然是鎖定狀態(tài)。
[0044]根據(jù)本申請上述實施例,步驟S102,在終端上安裝的應(yīng)用程序中選定一個或多個待鎖定的應(yīng)用程序包括:
[0045]步驟S1022,在終端上顯示應(yīng)用程序列表,其中,應(yīng)用程序列表中包含終端上安裝的所有應(yīng)用程序。
[0046]步驟S1024,將選中的一個或多個應(yīng)用程序作為待鎖定的應(yīng)用程序。
[0047]在一種可選的方案中,終端上可以顯示所有應(yīng)用程序的列表,用戶可以通過選擇應(yīng)用程序列表中的一個或多個應(yīng)用程序作為待鎖定的應(yīng)用程序。
[0048]例如,仍以終端是安卓系統(tǒng)設(shè)備,鎖定標(biāo)志位是共享的鎖標(biāo)志位變量為例,對本申請上述實施例進行詳細(xì)描述。在訪問限制功能開啟之后,用戶可以在終端設(shè)置中設(shè)置訪問限制應(yīng)用,即上述待鎖定的應(yīng)用程序,設(shè)置通過加載應(yīng)用列表供用戶選擇,安卓系統(tǒng)設(shè)備接收用戶選中的一個或多個應(yīng)用程序作為訪問限制應(yīng)用,即待鎖定的應(yīng)用程序。
[0049]根據(jù)本申請上述實施例,在終端為觸摸屏的情況下,如果觸摸屏中任意一個應(yīng)用程序的顯示圖標(biāo)處感應(yīng)到預(yù)定的觸摸操作,則確定感應(yīng)到預(yù)定的觸摸操作的應(yīng)用程序為待鎖定的應(yīng)用程序,其中,預(yù)定的觸摸操作包括如下任意一種操作:點擊操作、滑動操作、拖拽操作。
[0050]在一種可選的方案中,用戶可以通過點擊觸摸屏中需要鎖定的應(yīng)用程序的顯示圖標(biāo),確定待鎖定的應(yīng)用程序;用戶也可以通過在需要鎖定的應(yīng)用程序的顯示圖標(biāo)上按逆時針圓圈滑動選定該應(yīng)用程序作為待鎖定的應(yīng)用程序。
[0051]根據(jù)本申請上述實施例,在步驟S104,使用鎖定密碼將待鎖定的應(yīng)用程序進行鎖定之后,上述方法還包括:
[0052]步驟S106,將待鎖定的應(yīng)用程序存儲到訪問限制列表中。
[0053]在一種可選的方案中,在指定的應(yīng)用程序鎖定之后,將用戶選中的訪問限制應(yīng)用的包名存到數(shù)據(jù)庫的訪問限制列表AppAccessLimit.db中,并且通過內(nèi)容提供者組件將數(shù)據(jù)庫中的訪問限制列表AppAccessLimit.db暴露給其他應(yīng)用或者其他類訪問及操作。
[0054]根據(jù)本申請上述實施例,在步驟S102,終端上安裝的應(yīng)用程序中選定一個或多個待鎖定的應(yīng)用程序,并設(shè)置鎖定密碼之前,上述方法還包括:
[0055]步驟S132,在檢測到鎖定功能開關(guān)的觸發(fā)信號之后,檢測是否存在鎖定密碼。
[0056]步驟S134,如果檢測到存在鎖定密碼,則啟動鎖定功能開關(guān),并進入在檢測到鎖定指令之后,使用鎖定密碼將待鎖定的應(yīng)用程序進行鎖定的步驟。
[0057]步驟S136,如果檢測到不存在鎖定密碼,則設(shè)置鎖定密碼,并在鎖定密碼設(shè)置成功之后,啟動鎖定功能開關(guān)。
[0058]在一種可選的方案中,在用戶點擊鎖定功能開關(guān)之后,檢測是否已經(jīng)設(shè)置鎖定密碼,如果已經(jīng)設(shè)置,則啟動鎖定功能開關(guān);如果未設(shè)置鎖定密碼,則顯示鎖設(shè)置界面供用戶設(shè)置鎖定密碼,如果鎖定密碼設(shè)置成功,則啟動鎖定功能開關(guān)。
[0059]例如,仍以終端是安卓系統(tǒng)設(shè)備,鎖定標(biāo)志位是共享的鎖標(biāo)志位變量為例,對本申請上述實施例進行詳細(xì)描述。用戶在系統(tǒng)應(yīng)用設(shè)置中點擊訪問限制功能開關(guān)按鈕,設(shè)置會檢測訪問限制的鎖值(即上述的鎖定密碼)是否已經(jīng)設(shè)置,如果沒有設(shè)置,則會調(diào)出訪問限制鎖設(shè)置界面供用戶設(shè)置值,鎖值存在配置文件AccessLimitKey.xml中,如果用戶沒有設(shè)置成功退出,訪問限制功能開關(guān)按鈕狀態(tài)顯示關(guān)閉,如果訪問限制鎖值設(shè)置成功或者是已經(jīng)設(shè)置,則開啟應(yīng)用訪問限制功能,設(shè)置中的訪問限制功能開關(guān)狀態(tài)按鈕顯示為開啟。訪問限制功能開關(guān)狀態(tài)值isAppAccessLimitOpen和鎖標(biāo)志位變量isLock存在設(shè)置的變量配置文件中。
[0060]根據(jù)本申請上述實施例,如果檢測到任意一個已鎖定的應(yīng)用程序被訪問時,在步驟S122,對鎖定密碼進行驗證之前,上述方法還包括:
[0061]步驟S142,檢測任意一個已鎖定的應(yīng)用程序的鎖定標(biāo)志位是否為鎖定狀態(tài),或所有已鎖定的應(yīng)用程序的共享的鎖定標(biāo)志位是否為鎖定狀態(tài)。
[0062]步驟S144,如果檢測到任意一個已鎖定的應(yīng)用程序的鎖定標(biāo)志位是鎖定狀態(tài),或所有已鎖定的應(yīng)用程序的共享的鎖定標(biāo)志位是鎖定狀態(tài),則對鎖定密碼進行驗證。
[0063]在一種可選的方案中,在用戶訪問鎖定的應(yīng)用程序時,如果鎖定標(biāo)志位是單獨設(shè)定的鎖標(biāo)志位變量,則檢測該應(yīng)用程序?qū)?yīng)的鎖定標(biāo)志位是否為鎖定狀態(tài),如果確定是鎖定狀態(tài),則進行鎖定密碼驗證;如果鎖定標(biāo)志位是共享的鎖標(biāo)志位變量,則檢測共享的鎖標(biāo)志位變量是否為鎖定狀態(tài),如果確定是鎖定狀態(tài),則進行鎖定密碼驗證。
[0064]例如,仍以終端是安卓系統(tǒng)設(shè)備,鎖定標(biāo)志位是共享的鎖標(biāo)志位變量為例,對本申請上述實施例進行詳細(xì)描述。當(dāng)用戶通過新建OnCreate ()階段或重新生成OnResume ()階段啟動被鎖定的應(yīng)用程序,會加載數(shù)據(jù)庫的內(nèi)容,對共享的鎖標(biāo)志位變量的值進行判斷,若鎖標(biāo)志位變量isLock的值為true,即為加鎖狀態(tài),則會調(diào)用密碼鎖界面,只有輸入正確的密碼之后才能進入應(yīng)用,并且無需重新加載應(yīng)用程序,保存了應(yīng)用程序原有的操作狀態(tài)。
[0065]根據(jù)本申請上述實施例,如果驗證鎖定密碼失敗,上述方法還包括:
[0066]步驟S152,重新對鎖定密碼進行驗證,并記錄鎖定密碼的驗證失敗次數(shù)。
[0067]步驟S154,如果驗證失敗次數(shù)達到預(yù)設(shè)閾值,則生成提示信息,其中,提示信息用于表征任意一個已鎖定的應(yīng)用程序解鎖失敗,或所有已鎖定的應(yīng)用程序解鎖失敗。
[0068]在一種可選的方案中,如果用戶輸入的密碼不正確,則用戶重新輸入密碼,并將驗證失敗次數(shù)加1,當(dāng)驗證失敗次數(shù)達到預(yù)設(shè)閾值,例如3時,終端顯示提示信息,告知用戶解鎖失敗。
[0069]例如,仍以終端是安卓系統(tǒng)設(shè)備,鎖定標(biāo)志位是共享的鎖標(biāo)志位變量為例,對本申請上述實施例進行詳細(xì)描述。如果用戶輸入的密碼錯誤,則重新調(diào)用鎖輸入界面供用戶輸入,并記錄用戶輸入密碼錯誤的次數(shù),無法進入應(yīng)用操作頁面,當(dāng)用戶輸入密碼錯誤的次數(shù)大于3次時,提示用戶解鎖失敗或者等待一段時間重新解鎖。
[0070]此處需要說明的是,鎖輸入界面不再最近任務(wù)中出現(xiàn),也不響應(yīng)返回鍵退出以及其他應(yīng)用無法殺死鎖輸入界面應(yīng)用程序,用戶智能通過home鍵返回系統(tǒng)的主界面。
[0071]根據(jù)本申請上述實施例,在步驟S104,使用鎖定密碼將待鎖定的應(yīng)用程序進行鎖定之后,上述方法還包括:
[0072]步驟S162,在終端上安裝的任意一個應(yīng)用程序被刪除的過程中,判斷訪問限制列表中是否存在與任意一個的應(yīng)用程序匹配的應(yīng)用程序。
[0073]步驟S164,如