操作系統(tǒng)資源訪問方法和系統(tǒng)的制作方法
【專利摘要】一種操作系統(tǒng)資源訪問方法和系統(tǒng),其中該方法包括步驟:建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序;將所述第三方應用程序的訪問請求發(fā)送至所述服務程序;通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。本發(fā)明的技術,采用“服務”的方式來實現第三方應用程序對操作系統(tǒng)資源的訪問,無需修改第三方應用程序的安裝方式和用戶權限,通過與其對應的后臺可執(zhí)行應用程序來訪問操作系統(tǒng),避免了修改用戶組權限帶來的安全風險和誤操作影響,提高了第三方應用程序訪問操作系統(tǒng)資源的安全性和穩(wěn)定性。
【專利說明】操作系統(tǒng)資源訪問方法和系統(tǒng)【技術領域】
[0001]本發(fā)明涉及數據訪問技術,特別是涉及一種操作系統(tǒng)資源訪問方法和系統(tǒng)。
【背景技術】
[0002]在一些智能終端的操作系統(tǒng)(如IOS、android等)中,一般系統(tǒng)默認內置的后臺程序具有管理員(root)權限,可以訪問操作系統(tǒng)資源。而用戶自行安裝的第三方應用程序,則只有一般用戶(mobile)權限,只能訪問有限的公共資源,而不能直接訪問系統(tǒng)資源,第三方應用程序一般是以“沙盒”形式存在,非代碼文件都保存在該“沙盒”中,例如圖像,圖標,聲音,映像,屬性列表,文本文件等,第三方應用程序只能在為其所創(chuàng)建的文件系統(tǒng)中讀取文件,沒有權限直接對操作系統(tǒng)進行訪問請求,獲取數據或修改數據等。
[0003]現有技術當中,當第三方應用程序需要獲取和修改操作系統(tǒng)資源時,通常是修改第三方應用程序的安裝格式和安裝目錄,采用第三方安裝包格式(如deb、pxl格式)來打包應用程序,然后利用第三方安裝包格式的特性,將第三方應用程序直接安裝到系統(tǒng)級應用程序目錄中,并修改應用程序權限為管理員權限,從而使得第三方應用程序具有權限可以直接訪問和操作系統(tǒng)資源。
[0004]但采用上述修改方式,部分第三方應用程序安裝時修改用戶組權限,同時把安裝目錄、應用程序權限設置為最高,從而使得在安裝目錄下其他應用程序也同時獲得最高權限,使得其他應用程序可以不受限制訪問和修改系統(tǒng)的受限資源,存在較大的安全風險。
[0005]另外,第三方應用程序安裝成功后,應用程序獲得了系統(tǒng)的最高權限,如果使用不當,容易導致具有原始訪問權限的應用程序不能正常訪問該系統(tǒng)資源,甚至會導致發(fā)生卡死、程序崩潰等情況,嚴重影響了操作系統(tǒng)的穩(wěn)定性。
【發(fā)明內容】
[0006]基于此,有必要提供一種安全性高、穩(wěn)定性高的操作系統(tǒng)資源訪問方法和系統(tǒng)。
[0007]—種操作系統(tǒng)資源訪問方法,包括如下步驟:
[0008]建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序;
[0009]將所述第三方應用程序的訪問請求發(fā)送至所述服務程序;
[0010]通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。
[0011]一種操作系統(tǒng)資源訪問系統(tǒng),其特征在于,包括:
[0012]服務建立模塊,用于建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序;
[0013]請求發(fā)送模塊,用于將所述第三方應用程序的訪問請求發(fā)送至所述服務程序;
[0014]請求訪問模塊,用于通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。
[0015]上述操作系統(tǒng)資源訪問 方法和系統(tǒng),采用“服務”的方式來實現第三方應用程序對操作系統(tǒng)資源的訪問,無需修改第三方應用程序的安裝方式和用戶權限,通過與其對應的后臺可執(zhí)行應用程序來訪問操作系統(tǒng),避免了修改用戶組權限帶來的安全風險和誤操作影響,提高了第三方應用程序訪問操作系統(tǒng)資源的安全性和穩(wěn)定性。
【專利附圖】
【附圖說明】
[0016]圖1為一個實施例的操作系統(tǒng)資源訪問方法流程圖;
[0017]圖2為一個實施例的操作系統(tǒng)資源訪問系統(tǒng)結構示意圖。
【具體實施方式】
[0018]下面結合附圖對本發(fā)明的操作系統(tǒng)資源訪問方法的【具體實施方式】作詳細描述。
[0019]圖1示出了一個實施例的操作系統(tǒng)資源訪問方法流程圖,主要包括如下步驟:
[0020]步驟SlO:建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序,用于訪問操作系統(tǒng)資源。
[0021]在本步驟中,主要是針對于第三方應用程序建立相互獨立的與其進行數據交互的后臺可執(zhí)行應用程序。
[0022]在一個實施例中,依據第三方應用程序所需要訪問請求的操作系統(tǒng)資源,建立獨立的“服務內容”的后臺可執(zhí)行的服務程序,包括信息服務程序、收藏聯(lián)系人服務程序、電話鈴聲服務程序和/或通話記錄服務程序等,每個服務程序對應于一個獨立的功能,用于對操作系統(tǒng)的信息、收藏聯(lián)系人、電話鈴聲和/或通話記錄等進行數據讀取、刪除或修改等。
[0023]由于每一個服務程序本質上為一個可獨立運行的后臺可執(zhí)行應用程序,與操作系統(tǒng)的后臺程序運行方式完全相同,所以服務程序和系統(tǒng)自帶后臺程序可以安裝在相同目錄下,從而獲得管理員權限,無需修改對應的用戶組權限,其隨操作系統(tǒng)啟動并在后臺運行,實時響應第三方應用程序的服務請求。
[0024]步驟S20:將所述第三方應用程序的訪問請求發(fā)送至所述服務程序。
[0025]在本步驟中,當第三方應用程序要對操作系統(tǒng)進行訪問時,直接訪問與其對應的在后臺運行的服務程序。
[0026]在一個實施例中,第三方應用程序采用TCP/IP或Http方式發(fā)送所述訪問請求至所述服務程序。
[0027]對于訪問請求,可以設置成數據包形式,該數據包主要包括:第三方應用程序的ID號、訪問時間戳、請求內容及請求響應方式等,后臺的服務程序通過ID號和訪問時間戳來進行安全驗證,避免其它應用程序的非法請求;請求內容用于標記請求的具體操作,如獲取、修改或刪除用戶A的通訊錄;請求響應方式用于標記后臺的服務程序對于訪問請求的響應方式,如同步響應或異步響應。
[0028]步驟S30:通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。
[0029]在本步驟中,通過服務程序與操作系統(tǒng)進行數據交互,由操作系統(tǒng)響應服務程序的訪問請求。
[0030]在一個實施例中,訪問請求包括獲取操作系統(tǒng)資源(如讀取數據)的請求及對操作系統(tǒng)資源執(zhí)行操作(如刪除數據、修改數據等)的請求。
[0031]若所述訪問請求為獲取操作系統(tǒng)資源的請求,則由服務程序解析該訪問請求,根據訪問請求中的相關參數打開操作系統(tǒng)的數據庫,查詢對應的操作系統(tǒng)資源,并將其進行封裝后發(fā)送至對應的第三方應用程序;
[0032]若所述訪問請求為對操作系統(tǒng)資源執(zhí)行操作的請求,則由服務程序解析該訪問請求,根據所述訪問請求中的相關參數調用操作系統(tǒng)的應用程序接口,對操作系統(tǒng)資源執(zhí)行相應的操作,并將操作結果(如操作成功或失敗)發(fā)送至對應的第三方應用程序。
[0033]為了更加清晰本發(fā)明的技術方案,下面闡述基于本發(fā)明的操作系統(tǒng)資源訪問方法實現的應用示例。
[0034]示例一:第三方應用程序請求獲取操作系統(tǒng)的通話記錄;
[0035]建立與第三方應用程序對應的通話記錄服務程序,隨操作系統(tǒng)啟動并在在后臺運行,用于對操作系統(tǒng)的通話記錄進行訪問,當第三方應用程序啟動后,需要顯示用戶歷史通話記錄時,第三方應用程序通過TCP/IP或者Http方式向在后臺運行的通話記錄服務程序發(fā)送訪問請求,請求內容包括:(I)當前第三方應用程序的ID號和訪問時間戳;(2)訪問內容:獲取用戶A的通話記錄;(3)請求響應方式:同步響應和異步響應方式。后臺的通話記錄服務程序在收到訪問請求并通過安全驗證后,打開操作系統(tǒng)的通話記錄數據庫,通過sql語句查詢到用戶A的通話記錄,該通話記錄包括唯一標示的ID號、撥入/撥出號碼、通話時間等。通話記錄服務程序將獲取的通話記錄進行轉換(去掉不需要的字段)和封裝,然后同步或異步通過TCP/IP或者Http方式發(fā)送至對應的第三方應用程序,至此完成訪問過程。
[0036]示例二:第三方應用程序請求刪除操作系統(tǒng)通話記錄;
[0037]建立與第三方應用程序對應的通話記錄服務程序,隨操作系統(tǒng)啟動并在后臺運行,用于對操作系統(tǒng)的通話記錄進行訪問,當第三方應用程序啟動后,需要顯示用戶歷史通話記錄時,第三方應用程序通過TCP/IP或者Http方式向在后臺運行的通話記錄服務程序發(fā)送訪問請求,請求內容包括:⑴當前第三方應用程序的ID號和訪問時間戳;(2)訪問內容:刪除用戶A的通話記錄;(3)請求響應方式:同步響應和異步響應方式。后臺的通話記錄服務程序在收到訪問請求并通過安全驗證后,打開操作系統(tǒng)的通話記錄數據庫,通過sql語句查詢到用戶A的通話記錄,該通話記錄包括唯一標示的ID號、撥入/撥出號碼、通話時間等。調用操作系統(tǒng)刪除通話的API (應用程序)接口刪除用戶A的通話記錄,然后同步或異步通過TCP/IP或者Http方式將操作結果(成功與否)發(fā)送至對應的第三方應用程序,至此完成訪問過程。
[0038]由于部分系統(tǒng)資源數據是保存在內存中,直接刪除操作系統(tǒng)的數據庫內容,在操作系統(tǒng)重啟后,一般會把內存中數據回重新寫到數據庫中,從而刪除失敗。優(yōu)選的,當后臺的通話記錄服務程序收到第三方應用程序的刪除通話記錄的請求后,采用調用操作系統(tǒng)的API接口,利用現有操作系統(tǒng)自帶接口去刪除內存和數據庫中的對應數據,而不是直接去除數據庫中的通話記錄,保證了操作系統(tǒng)的穩(wěn)定性和系統(tǒng)資源數據的完整性,避免直接刪除數據庫的數據而導致產生系統(tǒng)錯誤,確保了操作系統(tǒng)的安全運行。
[0039]本發(fā)明的操作系統(tǒng)資源訪問方法,采用“服務”模式來實現第三方應用程序和操作系統(tǒng)穩(wěn)定互通,使得仍然存放在“沙盒”中的第三方應用程序可以快捷、穩(wěn)定的訪問操作系統(tǒng)資源,避免了第三方應用程序直接訪問造成對操作系統(tǒng)穩(wěn)定性的影響。
[0040]同時,由于每個服務程序相互獨立,服務程序只與第三方應用程序進行數據交互,可以很方便的對第三方應用程序進行“增量”更新,當增加一個服務程序時,只要發(fā)布一個增量安裝包,更新第三方應用程序及新增的后臺服務程序即可,減少安裝包的數據量,節(jié)省流量。
[0041]進一步地,服務程序可以與已經發(fā)布的第三方應用程序進行覆蓋安裝,完美兼容,簡化了第三方安裝格式包繁瑣的安裝、卸載操作,如在IOS系統(tǒng)中,用戶在安裝完第三方應用程序后,通過在第三方應用程序設計升級按鈕,當用戶點擊該升級按鈕時,第三方應用程序跳轉到IOS系統(tǒng)的cydia程序,利用cydia下載對應的后臺服務程序的deb包進行安裝,第三方應用程序即可利用該服務程序來獲取及操作操作系統(tǒng)資源。
[0042]下面結合附圖對本發(fā)明的操作系統(tǒng)資源訪問系統(tǒng)的【具體實施方式】作詳細描述。
[0043]圖2示出了一個實施例的操作系統(tǒng)資源訪問系統(tǒng)結構示意圖,主要包括:服務建立模塊10、請求發(fā)送模塊20及請求訪問模塊30。
[0044]所述服務建立模塊10,用于建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序,用于訪問操作系統(tǒng)資源。
[0045]在一個實施例中,所述服務程序包括:信息服務程序、收藏聯(lián)系人服務程序、電話鈴聲服務程序和/或通話記錄服務程序。
[0046]所述請求發(fā)送模塊20,用于將所述第三方應用程序的訪問請求發(fā)送至所述服務程序。
[0047]在一個實施例中,請求發(fā)送模塊20采用TCP/IP或Http方式發(fā)送所述訪問請求。
[0048]在一個實施例中,所述訪問請求包括:第三方應用程序的ID號、訪問時間戳、請求內容及請求響應方式。
[0049]所述請求訪問模塊30,用于通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。
[0050]在一個實施例中,所述請求訪問模塊30進一步用于:
[0051]若所述訪問請求為獲取操作系統(tǒng)資源的請求,則由所述服務程序解析所述訪問請求,根據所述訪問請求打開操作系統(tǒng)的數據庫,查詢對應的操作系統(tǒng)資源,并將其進行封裝后發(fā)送至對應的第三方應用程序;
[0052]若所述訪問請求為對操作系統(tǒng)資源執(zhí)行操作的請求,則由所述服務程序解析所述訪問請求,根據所述訪問請求調用操作系統(tǒng)的應用程序接口,對操作系統(tǒng)資源執(zhí)行相應的操作,并將操作結果發(fā)送至對應的第三方應用程序。
[0053]本發(fā)明的操作系統(tǒng)資源訪問系統(tǒng)與本發(fā)明的操作系統(tǒng)資源訪問方法一一對應,在上述操作系統(tǒng)資源訪問方法的實施例闡述的技術特征及其有益效果均適用于操作系統(tǒng)資源訪問系統(tǒng)的實施例中。
[0054]本領域普通技術人員可以理解實現上述實施方式中的全部或部分流程,以及對應的系統(tǒng),是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,可包括如上述各實施方式的流程。其中,所述的存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-OnlyMemory,ROM)或隨機存儲記憶體(RandomAccess Memory, RAM)等。
[0055]以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發(fā)明專利范圍的限制。應當指出的是,對于本領域的普通技術人員來說,在不脫離本發(fā)明構思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應以所附權利要求為準。
【權利要求】
1.一種操作系統(tǒng)資源訪問方法,其特征在于,包括如下步驟: 建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序; 將所述第三方應用程序的訪問請求發(fā)送至所述服務程序; 通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。
2.根據權利要求1所述的操作系統(tǒng)資源訪問方法,其特征在于,所述服務程序包括:信息服務程序、收藏聯(lián)系人服務程序、電話鈴聲服務程序和/或通話記錄服務程序。
3.根據權利要求1所述的操作系統(tǒng)資源訪問方法,其特征在于,采用TCP/IP或Hp方式發(fā)送所述訪問請求。
4.根據權利要求1所述的操作系統(tǒng)資源訪問方法,其特征在于,所述訪問請求包括:第三方應用程序的ID號、訪問時間戳、請求內容及請求響應方式。
5.根據權利要求1所述的操作系統(tǒng)資源訪問方法,其特征在于,通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源的步驟包括: 若所述訪問請求為獲取操作系統(tǒng)資源的請求,則由所述服務程序解析所述訪問請求,根據所述訪問請求打開操作系統(tǒng)的數據庫,查詢對應的操作系統(tǒng)資源,并將其進行封裝后發(fā)送至對應的第三方應用程序; 若所述訪問請求為對操作系統(tǒng)資源執(zhí)行操作的請求,則由所述服務程序解析所述訪問請求,根據所述訪問請求調用操作系統(tǒng)的應用程序接口,對操作系統(tǒng)資源執(zhí)行相應的操作,并將操作結果發(fā)送至對應的第三方應用程序。
6.一種操作系統(tǒng)資源訪問系統(tǒng),其特征在于,包括: 服務建立模塊,用于建立與第三方應用程序對應的服務程序,該服務程序為獨立運行的后臺可執(zhí)行應用程序; 請求發(fā)送模塊,用于將所述第三方應用程序的訪問請求發(fā)送至所述服務程序; 請求訪問模塊,用于通過所述服務程序根據所述訪問請求訪問操作系統(tǒng)資源。
7.根據權利要求6所述的操作系統(tǒng)資源訪問系統(tǒng),其特征在于,所述服務程序包括:信息服務程序、收藏聯(lián)系人服務程序、電話鈴聲服務程序和/或通話記錄服務程序。
8.根據權利要求6所述的操作系統(tǒng)資源訪問系統(tǒng),其特征在于,采用TCP/IP或Http方式發(fā)送所述訪問請求。
9.根據權利要求6所述的操作系統(tǒng)資源訪問系統(tǒng),其特征在于,所述訪問請求包括:第三方應用程序的ID號、訪問時間戳、請求內容及請求響應方式。
10.根據權利要求6所述的操作系統(tǒng)資源訪問系統(tǒng),其特征在于,所述請求訪問模塊進一步用于: 若所述訪問請求為獲取操作系統(tǒng)資源的請求,則由所述服務程序解析所述訪問請求,根據所述訪問請求打開操作系統(tǒng)的數據庫,查詢對應的操作系統(tǒng)資源,并將其進行封裝后發(fā)送至對應的第三方應用程序; 若所述訪問請求為對操作系統(tǒng)資源執(zhí)行操作的請求,則由所述服務程序解析所述訪問請求,根據所述訪問請求調用操作系統(tǒng)的應用程序接口,對操作系統(tǒng)資源執(zhí)行相應的操作,并將操作結果發(fā)送至對應的第三方應用程序。
【文檔編號】G06F9/44GK103885763SQ201210562962
【公開日】2014年6月25日 申請日期:2012年12月21日 優(yōu)先權日:2012年12月21日
【發(fā)明者】葉禮偉, 李斌 申請人:騰訊科技(深圳)有限公司