亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

移動(dòng)終端及其應(yīng)用保護(hù)方法

文檔序號(hào):9888011閱讀:499來(lái)源:國(guó)知局
移動(dòng)終端及其應(yīng)用保護(hù)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及移動(dòng)通訊技術(shù)領(lǐng)域,特別是涉及一種移動(dòng)終端及其應(yīng)用保護(hù)方法。
【背景技術(shù)】
[0002] 近年來(lái),隨著移動(dòng)通訊技術(shù)領(lǐng)域的發(fā)展,高配置高性能的移動(dòng)終端層出不窮,但中 低端市場(chǎng)仍不容忽視。在中低配置的手機(jī)中,當(dāng)運(yùn)行大量應(yīng)用時(shí),系統(tǒng)內(nèi)存占用不斷提高, Android(安卓)系統(tǒng)的內(nèi)核啟動(dòng)低內(nèi)存管理機(jī)制,定時(shí)執(zhí)行檢查,Kill(殺死)一些應(yīng)用,釋 放內(nèi)存。
[0003] 其中,低內(nèi)存管理機(jī)制主要是通過(guò)進(jìn)程的〇〇m_adj(進(jìn)程優(yōu)先級(jí))來(lái)判定進(jìn)程的重 要程度,其〇〇m_adj值越小,程序越重要,被殺的可能性越低。
[0004] 請(qǐng)參看系統(tǒng)定義的進(jìn)程類型及對(duì)應(yīng)的〇〇m_adj的關(guān)系表:
[0005]
[0006] 其中進(jìn)程類型隨應(yīng)用程序類型、是否可見會(huì)動(dòng)態(tài)變化,而對(duì)應(yīng)的〇〇m_adj值也隨之 改變。
[0007] 在Android系統(tǒng)中,低內(nèi)存管理機(jī)制會(huì)在用戶空間中指定一組內(nèi)存臨界值,當(dāng)其中 的某個(gè)值與某類進(jìn)程的〇〇m_adj值在同一范圍的時(shí)候,該類進(jìn)程將會(huì)被殺死。因此,系統(tǒng)中 的一些重要應(yīng)用,例如啟動(dòng)器應(yīng)用,它是手機(jī)的桌面,是用戶體驗(yàn)的重要應(yīng)用模塊,負(fù)責(zé)組 織并顯示系統(tǒng)所有應(yīng)用。啟動(dòng)器的應(yīng)用程序類型為Η0ΜΕ_ΑΡΡ,對(duì)應(yīng)的oom_ad j為6;當(dāng)其運(yùn)行 在前臺(tái)對(duì)用戶可見且可操作時(shí),其進(jìn)程類型轉(zhuǎn)換為F0REGR0UND_APP,此時(shí)oom_adj為0,優(yōu)先 級(jí)很高;當(dāng)其對(duì)用戶可見但不可操作時(shí),其進(jìn)程類型為VISIBLE_APP, 〇〇m_adj為1有所降低; 當(dāng)其退到后臺(tái)對(duì)用戶完全不可見時(shí),其為Η0ΜΕ_ΑΡΡ,其進(jìn)程類型變?yōu)?,優(yōu)先級(jí)降到更低,當(dāng) 啟動(dòng)器的優(yōu)先級(jí)降低時(shí),就可能被殺死,而啟動(dòng)器應(yīng)用被殺死重啟的體驗(yàn),并不是用戶希望 看到的,但這樣的情況在用戶長(zhǎng)時(shí)間體驗(yàn)其它應(yīng)用再返回時(shí)常有發(fā)生。
[0008] 現(xiàn)有技術(shù)中通??梢圆捎萌缦路绞奖苊鈶?yīng)用被殺死:
[0009] 1、提升本應(yīng)用為系統(tǒng)核心進(jìn)程,任何情況下不會(huì)被殺死,在"設(shè)置"=>"應(yīng)用程序" 里面也會(huì)屏蔽掉"強(qiáng)制停止"的操作。此類方法,可以讓應(yīng)用永不被殺死,但強(qiáng)制提升應(yīng)用為 核心進(jìn)程,持續(xù)占用內(nèi)存的方式,違背了 Android內(nèi)存管理機(jī)制,干擾了整個(gè)系統(tǒng)的運(yùn)行。
[0010] 2、調(diào)整某一類型進(jìn)程的〇〇m_adj或內(nèi)存臨界值,從而控制該類應(yīng)用被Kill的可能 性,但此方法會(huì)影響在該手機(jī)系統(tǒng)上運(yùn)行的其它同類應(yīng)用。
[0011]因此,現(xiàn)有技術(shù)的降低應(yīng)用被殺死的方法存在可行性以及人性化方面的缺陷。

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

[0012] 本發(fā)明提供一種移動(dòng)終端及其應(yīng)用保護(hù)方法,通過(guò)為應(yīng)用設(shè)置空的服務(wù)組件,修 改應(yīng)用的進(jìn)程類型,提高進(jìn)程的優(yōu)先級(jí),避免應(yīng)用在系統(tǒng)內(nèi)在不足或應(yīng)用進(jìn)程數(shù)量過(guò)多時(shí) 被優(yōu)先結(jié)束,提高用戶體驗(yàn)。
[0013] 本發(fā)明的一方面提供一種移動(dòng)終端的應(yīng)用保護(hù)方法,該移動(dòng)終端安裝有Android 操作系統(tǒng),應(yīng)用運(yùn)行于Android操作系統(tǒng)中,方法包括:
[0014]在Android操作系統(tǒng)啟動(dòng)且應(yīng)用未啟動(dòng)時(shí),為應(yīng)用設(shè)置一空的服務(wù)組件,其中服務(wù) 組件分配有進(jìn)程識(shí)別碼和提示信息;
[0015] 于Andro i d操作系統(tǒng)的后臺(tái)運(yùn)行服務(wù)組件,其中服務(wù)組件在后臺(tái)運(yùn)行時(shí),Andro i d 操作系統(tǒng)的內(nèi)核將服務(wù)組件識(shí)別為后臺(tái)服務(wù),服務(wù)組件的進(jìn)程類型為SEC0NDARY_SERVER, 其oom_adj值為2。
[0016] 其中,在應(yīng)用被啟動(dòng)時(shí),將進(jìn)程識(shí)別碼發(fā)送至內(nèi)核,使得內(nèi)核將服務(wù)組件識(shí)別為前 臺(tái)服務(wù),服務(wù)組件的進(jìn)程類型轉(zhuǎn)換為F0REGR0UND_APP,其oom_ad j值為0。
[0017]其中,在應(yīng)用被啟動(dòng)時(shí),應(yīng)用將提示信息傳遞至Android操作系統(tǒng)的框架層,方法 還包括:
[0018] 判斷提示信息是否由應(yīng)用發(fā)送;
[0019] 如果是,不執(zhí)行在狀態(tài)欄上顯示提示信息。
[0020] 其中,移動(dòng)終端為低配置設(shè)備。
[0021] 其中,應(yīng)用包括啟動(dòng)器。
[0022] 本發(fā)明的另一方面提供一種移動(dòng)終端,移動(dòng)終端安裝有Android操作系統(tǒng),移動(dòng)終 端的應(yīng)用運(yùn)行于Android操作系統(tǒng)中,移動(dòng)終端包括:
[0023]設(shè)置模塊,用于在Android操作系統(tǒng)啟動(dòng)且應(yīng)用未啟動(dòng)時(shí),為應(yīng)用設(shè)置一空的服務(wù) 組件,其中服務(wù)組件分配有進(jìn)程識(shí)別碼和提示信息;
[0024]運(yùn)行模塊,與設(shè)置模塊連接,用于Android操作系統(tǒng)的后臺(tái)運(yùn)行服務(wù)組件,在服務(wù) 組件在后臺(tái)運(yùn)行時(shí),Android操作系統(tǒng)的內(nèi)核將服務(wù)組件識(shí)別為后臺(tái)服務(wù),服務(wù)組件的進(jìn)程 類型為 SEC0NDARY_SERVER,其 oom_ad j 值為 2。
[0025] 其中,移動(dòng)終端還包括:
[0026]傳輸模塊,與運(yùn)行模塊連接,用于在應(yīng)用被啟動(dòng)時(shí),將進(jìn)程識(shí)別碼發(fā)送至內(nèi)核,使 得內(nèi)核將服務(wù)組件識(shí)別為前臺(tái)服務(wù),服務(wù)組件的進(jìn)程類型轉(zhuǎn)換為F0REGR0UND_APP,其〇〇m_ 3心_值為0。
[0027]其中,傳輸模塊還用于在應(yīng)用被啟動(dòng)時(shí),應(yīng)用將提示信息傳遞至Android操作系統(tǒng) 的框架層,移動(dòng)終端還包括:
[0028]判斷模塊,與傳輸模塊連接,用于判斷提示信息是否由應(yīng)用發(fā)送;
[0029] 顯示模塊,與判斷模塊連接,用于在判斷結(jié)果為是時(shí),不執(zhí)行在狀態(tài)欄上顯示提示 信息。
[0030] 其中,移動(dòng)終端為低配置設(shè)備。
[0031] 其中,應(yīng)用包括啟動(dòng)器。
[0032] 通過(guò)上述方案,本發(fā)明的有益效果是:區(qū)別于現(xiàn)有技術(shù),本發(fā)明的低配置移動(dòng)終端 安裝有Android操作系統(tǒng),應(yīng)用運(yùn)行于Android操作系統(tǒng)中,根據(jù)應(yīng)用的重要程度,為應(yīng)用設(shè) 置空的服務(wù)組件,該服務(wù)組件在Android操作系統(tǒng)的后臺(tái)運(yùn)行,并不執(zhí)行特定的功能,從而 實(shí)現(xiàn)通過(guò)空服務(wù)組件修改應(yīng)用的進(jìn)程類型,提高進(jìn)程的優(yōu)先級(jí),降低該應(yīng)用在系統(tǒng)內(nèi)在不 足或應(yīng)用進(jìn)程數(shù)量過(guò)多時(shí)優(yōu)先結(jié)束的概率,并且該方案容易實(shí)施且效果明顯,可行性高,提 尚用戶體驗(yàn)。
【附圖說(shuō)明】
[0033] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使 用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于 本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。其中:
[0034] 圖1是本發(fā)明一實(shí)施例的移動(dòng)終端的應(yīng)用保護(hù)方法的流程示意圖;
[0035] 圖2是本發(fā)明移動(dòng)終端的裝置結(jié)構(gòu)框圖;
[0036] 圖3是本發(fā)明移動(dòng)終端的硬件結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0037] 下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部實(shí)施例?;诒?發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性的勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0038] 請(qǐng)參看圖1,圖1是本發(fā)明一實(shí)施例的移動(dòng)終端的應(yīng)用保護(hù)方法的流程示意圖。其 中,移動(dòng)終端安裝有Android操作系統(tǒng),移動(dòng)終端的應(yīng)用運(yùn)行于該Android操作系統(tǒng)中。如圖 1所示,本實(shí)施例移動(dòng)終端的應(yīng)用保護(hù)方法包括:
[0039] S11:在Android操作系統(tǒng)啟動(dòng)且應(yīng)用未啟動(dòng)時(shí),為應(yīng)用設(shè)置一空的服務(wù)組件。
[0040]移動(dòng)終端這里指低配置設(shè)置,應(yīng)用包括但不限于為啟動(dòng)器。低配置設(shè)置安裝有 Android操作系統(tǒng),啟動(dòng)器等應(yīng)用運(yùn)行于Android操作系統(tǒng)中,其中,Android操作系統(tǒng)包括 四大組件,分別為Activity(活動(dòng)),Service(服務(wù)),Content Provider(內(nèi)容提供者)及 Broadcast Receiver(廣播接收器)。其中,Activity用于表現(xiàn)功能,是一個(gè)應(yīng)用程序組件, 在Android的程序當(dāng)中,Activity-般代表手機(jī)屏幕的一屏,通過(guò)setContentView(View)來(lái) 顯示指定控件。Service用于后臺(tái)運(yùn)行服務(wù),不提供界面呈現(xiàn)。Broadcast Receiver用于接 收廣播。Content Provider支持在多個(gè)應(yīng)用中存儲(chǔ)和讀取數(shù)據(jù),相當(dāng)于數(shù)據(jù)庫(kù)。
[0041 ]與負(fù)責(zé)顯示功能的組件Activity相比,Service對(duì)用戶不可見,負(fù)責(zé)部分后臺(tái)操 作,是一個(gè)不和用戶交互的應(yīng)用組件,其擁有一部分Activity所無(wú)法完成的能力,包括后臺(tái) 運(yùn)行及不被Activity生命周期所管理。Android系統(tǒng)會(huì)盡量保持擁有Service的應(yīng)用進(jìn)程運(yùn) 行,即使該應(yīng)用已運(yùn)行在后臺(tái)。
[0042]在本實(shí)施例中,在Android操作系統(tǒng)啟動(dòng),但應(yīng)用未啟動(dòng)時(shí),為該應(yīng)用設(shè)置一個(gè)空 的服務(wù)組件,其中服務(wù)組件分配有進(jìn)程識(shí)別碼和提示信息。該服務(wù)組件為空的程序,其并不 執(zhí)行特定的功能,僅用于改變應(yīng)用的進(jìn)程類型,以降低〇〇m_adj值。其中服務(wù)組件的啟動(dòng)方 式,依附于應(yīng)用的主進(jìn)程而啟動(dòng),通過(guò)調(diào)用startForeground(int, Notification)!;安卓系 統(tǒng)的一程序)方法來(lái)啟動(dòng),將Service所屬的進(jìn)程識(shí)別碼以及提示信息作為應(yīng)用保護(hù)方法的 傳遞參數(shù)。
[0043] S12:于Android操作系統(tǒng)的后臺(tái)運(yùn)行服務(wù)組件。
[0044] 在Android操作系統(tǒng)的后臺(tái)運(yùn)行服務(wù)組件,并且在服務(wù)組件在后臺(tái)運(yùn)行時(shí), Android操作系統(tǒng)的內(nèi)核將服務(wù)組件識(shí)別為后臺(tái)服務(wù),服務(wù)組件的進(jìn)程類型為SEC0NDARY_ SERVER,其 oom_ad j 值為 2。
[0045] Android操作系統(tǒng)采用分層的架構(gòu),共包括四層,從高層到低層依次為應(yīng)用程序 層、應(yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層和Linux內(nèi)核層。其中,Android會(huì)同一系列核心應(yīng)用程 序包一起發(fā)布,應(yīng)用程序包包括客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程 序等。應(yīng)用程序框架指應(yīng)用程序編程接口(Application Programming Interface;簡(jiǎn)稱 API),開發(fā)人員可以完全訪問(wèn)核心應(yīng)用程序所使用的API框架。系統(tǒng)運(yùn)行庫(kù)指Android操作 系統(tǒng)中包含的一些C/C++庫(kù),這些庫(kù)能被Android系統(tǒng)中不同的組件使用。它們通過(guò)Android 應(yīng)用程序框架為開發(fā)者提供服務(wù)。Linux內(nèi)核控制包括安全(Security),存儲(chǔ)器管理 (Memory Management),程序管理(Process Management),網(wǎng)絡(luò)堆棧(Network Stack),驅(qū)動(dòng) 程序模型(Driver Model)等。
[0046] S13:在應(yīng)用被啟動(dòng)時(shí),將進(jìn)程識(shí)別碼發(fā)送至內(nèi)核。
[0047]在應(yīng)用被啟動(dòng)時(shí),將進(jìn)程識(shí)別碼發(fā)送至Android操作系統(tǒng)的內(nèi)核,使得內(nèi)核將服務(wù) 組件識(shí)別為前臺(tái)服務(wù),從而服務(wù)組件的進(jìn)程類型轉(zhuǎn)換為F0REGR0UND_APP,其oom_ad j值為0。 [0048] S14:應(yīng)用將提示信息傳遞至Android操作系統(tǒng)的框架層,判斷提示信息是否由應(yīng) 用發(fā)送。
[0049]在應(yīng)用被啟動(dòng)時(shí),應(yīng)用還將提示信息傳遞至Android操作系統(tǒng)的框架層,并判斷該 提示信息是否由應(yīng)用發(fā)送。如果是,則進(jìn)入步驟S15,如果否,則進(jìn)入步驟S16。
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1