信息處理方法及相應(yīng)信息處理裝置制造方法
【專利摘要】本發(fā)明公開一種信息處理方法以及終端設(shè)備,所述信息處理方法應(yīng)用于終端設(shè)備的瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,所述方法包含以下步驟:接收所述應(yīng)用層對第一功能的調(diào)用;確定與所調(diào)用的第一功能對應(yīng)的第一插件;通過內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將所述調(diào)用轉(zhuǎn)發(fā)給與所述第一功能對應(yīng)的第一插件,以使所述第一插件執(zhí)行所述第一功能。
【專利說明】信息處理方法及相應(yīng)信息處理裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種信息處理方法及相應(yīng)信息處理裝置。
【背景技術(shù)】
[0002]Chrome是目前非常主流的瀏覽器,功能非常強(qiáng)大,并且可以應(yīng)用到諸如智能手機(jī)、平板電腦或PC之類的終端設(shè)備上。但是由于Chrome的配置不支持開發(fā)者注冊自定義的javascript函數(shù),因此Chrome瀏覽器不能運(yùn)行這些javascript函數(shù)?,F(xiàn)有技術(shù)中的一種解決方法是使用現(xiàn)有的javascript語言來二次開發(fā)新的javascript函數(shù)。但是,由于底層使用的也是javascript (效率很低),所以在Chrome瀏覽器運(yùn)行二次開發(fā)的新javascript函數(shù)時的速度會很慢,并且效率偏低。另一種解決方法是在Chrome的內(nèi)核中添加自定義的javascript函數(shù),以對自定義的javascript函數(shù)進(jìn)行注冊。但是這需要修改Chrome內(nèi)核代碼,開發(fā)復(fù)雜度大,移植性差。
【發(fā)明內(nèi)容】
[0003]為了解決現(xiàn)有技術(shù)中的上述技術(shù)問題,根據(jù)本發(fā)明的一方面,提供一種信息處理方法,應(yīng)用于終端設(shè)備的瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,所述方法包含以下步驟:接收所述應(yīng)用層對第一功能的調(diào)用;確定與所調(diào)用的第一功能對應(yīng)的第一插件;通過內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將所述調(diào)用轉(zhuǎn)發(fā)給與所述第一功能對應(yīng)的第一插件,以使所述第一插件執(zhí)行所述第一功能。
[0004]此外,根據(jù)本發(fā)明的一個實(shí)施例,該方法進(jìn)一步包括:接收所述第一插件執(zhí)行所述第一功能產(chǎn)生的執(zhí)行結(jié)果;以及將所述執(zhí)行結(jié)果返回所述應(yīng)用層。
[0005]此外,根據(jù)本發(fā)明的另一個實(shí)施例,該方法進(jìn)一步包括:確定與所調(diào)用的第一功能對應(yīng)的第一插件的步驟包括:基于所述第一功能的名稱和/或ID確定對應(yīng)的第一插件。
[0006]此外,根據(jù)本發(fā)明的另一個實(shí)施例,其中所述應(yīng)用層對第一功能的調(diào)用為javascript調(diào)用;以及所述轉(zhuǎn)發(fā)函數(shù)為Postmsg函數(shù)。
[0007]此外,根據(jù)本發(fā)明的另一個實(shí)施例,其中所述第一插件由C、JAVA語言中的至少一種實(shí)現(xiàn)。
[0008]根據(jù)本發(fā)明的另一方面,提供一種信息處理裝置,應(yīng)用于終端設(shè)備的瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,包括:第一接收單元,接收所述應(yīng)用層對第一功能的調(diào)用;確定單元,確定與所調(diào)用的第一功能對應(yīng)的第一插件;轉(zhuǎn)發(fā)單元,通過內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將所述調(diào)用轉(zhuǎn)發(fā)給與所述第一功能對應(yīng)的第一插件以使所述第一插件執(zhí)行所述第一功能。
[0009]此外,根據(jù)本發(fā)明的一個實(shí)施例,還包括:第二接收單元,接收所述第一插件執(zhí)行所述第一功能產(chǎn)生的執(zhí)行結(jié)果;以及返回單元,將所述執(zhí)行結(jié)果返回所述應(yīng)用層。
[0010]此外,根據(jù)本發(fā)明的另一個實(shí)施例,所述確定單元具體用于基于所述第一功能的名稱和/或ID確定對應(yīng)的第一插件。
[0011]此外,根據(jù)本發(fā)明的另一個實(shí)施例,所述應(yīng)用層對第一功能的調(diào)用為javascript調(diào)用;以及所述轉(zhuǎn)發(fā)函數(shù)為Postmsg函數(shù)。
[0012]此外,根據(jù)本發(fā)明的另一個實(shí)施例,所述第一插件由C、JAVA語言中的至少一種實(shí)現(xiàn)。
[0013]根據(jù)本發(fā)明的另一方面,提供一種終端設(shè)備,所述終端設(shè)備包括瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,所述終端設(shè)備包括:上述信息處理裝置。
[0014]通過使用本發(fā)明公開的上述信息處理方法和相應(yīng)的信息處理裝置,當(dāng)用戶需要調(diào)用特定功能時,可以將調(diào)用轉(zhuǎn)發(fā)到相應(yīng)的由C語言或者JAVA語言實(shí)現(xiàn)的插件以使該插件執(zhí)行特定功能,這樣不需要二次開發(fā)javascript函數(shù),而且在作為底層的插件是C代碼或JAVA代碼的情況下,不但可以完成Javascript不能實(shí)現(xiàn)的功能而且效率要高很多。
【專利附圖】
【附圖說明】
[0015]圖1是根據(jù)本發(fā)明一個實(shí)施例的信息處理方法的流程圖;
[0016]圖2是根據(jù)本發(fā)明另一個實(shí)施例的信息處理方法的流程圖;
[0017]圖3是圖示根據(jù)本發(fā)明一個實(shí)施例的信息處理裝置的示意圖;以及
[0018]圖4是圖示根據(jù)本發(fā)明另一個實(shí)施例的信息處理裝置的示意圖。
【具體實(shí)施方式】
[0019]將參照附圖詳細(xì)描述根據(jù)本發(fā)明的各個實(shí)施例。這里,需要注意的是,在附圖中,將相同的附圖標(biāo)記賦予基本上具有相同或類似結(jié)構(gòu)和功能的組成部分,并且將省略關(guān)于它們的重復(fù)描述。
[0020]圖1是根據(jù)本發(fā)明一個實(shí)施例的信息處理方法的流程圖。這里,圖1的方法可以應(yīng)用到諸如智能手機(jī)、平板電腦或PC之類的終端設(shè)備的Chrome的瀏覽器上,該瀏覽器包含應(yīng)用層和內(nèi)核層。該內(nèi)核層例如可以包括webkit。
[0021]如圖1所示,在用戶需要在瀏覽器上調(diào)用(如,通過特定按鈕激活或自動運(yùn)行)第一功能(例如,瀏覽器頁面上的特定服務(wù)或函數(shù)調(diào)用)的情況下,那么在步驟Si中,接收瀏覽器的應(yīng)用層對第一功能的調(diào)用。根據(jù)本發(fā)明的實(shí)施例,應(yīng)用層對第一功能的調(diào)用為Javascript 調(diào)用。
[0022]在步驟S2中,確定與所調(diào)用的第一功能對應(yīng)的第一插件。由于可以存在很多與不同功能對應(yīng)的插件,因此終端設(shè)備需要確定與所調(diào)用的功能對應(yīng)的插件。例如,這些插件可以通過C語言來實(shí)現(xiàn)。此外,根據(jù)本發(fā)明的另一個實(shí)施例,這些插件可以通過Java語言來實(shí)現(xiàn)。此外,本發(fā)明不限于此,還可以使用其它計算機(jī)程序語言來實(shí)現(xiàn)這些插件。
[0023]這里,可以使用所調(diào)用的第一功能的名稱和/或ID在查找表(映射表)查詢對應(yīng)的第一插件來確定所調(diào)用的第一功能相應(yīng)的第一插件之間的對應(yīng)關(guān)系。這里,查找表可以存儲各種功能與對應(yīng)的插件之間的對應(yīng)關(guān)系,并且內(nèi)置于終端設(shè)備的存儲單元中。
[0024]在步驟S3中,通過瀏覽器內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將調(diào)用轉(zhuǎn)發(fā)給與第一功能對應(yīng)的第一插件,以使得第一插件執(zhí)行第一功能。這樣完成對第一功能的調(diào)用。該轉(zhuǎn)發(fā)函數(shù)可以例如通過發(fā)消息給第一插件來將該調(diào)用轉(zhuǎn)發(fā)給第一插件。根據(jù)本發(fā)明的實(shí)施例,在Chrome瀏覽器中,根據(jù)本發(fā)明實(shí)施例的轉(zhuǎn)發(fā)函數(shù)可以是Postmsg函數(shù)。該轉(zhuǎn)發(fā)函數(shù)用于將特定的功能調(diào)用轉(zhuǎn)發(fā)給對應(yīng)的插件,使得該插件執(zhí)行該調(diào)用以實(shí)現(xiàn)該特定的功能。例如Chrome瀏覽器內(nèi)核中的 Pepper Plugin Application Programming Interface (PPAPI)的 plugin.postmessage可以是轉(zhuǎn)發(fā)函數(shù)的一個示例,其中plugin可以由與第一功能對應(yīng)的第一插件的插件名替換。
[0025]在這種情況下,在第一插件通過轉(zhuǎn)發(fā)函數(shù)接收到該調(diào)用之后,由C語言或者Java語言之類的計算機(jī)語言實(shí)現(xiàn)的第一插件執(zhí)行來實(shí)現(xiàn)第一功能,并且產(chǎn)生執(zhí)行第一功能的執(zhí)行結(jié)果。
[0026]例如,在針對第一功能的調(diào)用為javascript調(diào)用的情況下,上述步驟S1-S3可以由終端設(shè)備的處理單元運(yùn)行特定的javascript檢測程序?qū)崿F(xiàn)。
[0027]在這種情況下,當(dāng)用戶需要調(diào)用特定的功能(如,javascript調(diào)用)時,可以通過步驟S1-S3將該調(diào)用發(fā)送到相應(yīng)的插件,通過由C語言或JAVA語言之類實(shí)現(xiàn)的插件完成相應(yīng)的功能來完成對特定功能的調(diào)用。這樣,不但不需要二次開發(fā)javascript函數(shù),而且在作為底層的插件是C代碼或JAVA代碼的情況下,不但可以完成Javascript不能實(shí)現(xiàn)的功能而且效率要高很多。
[0028]圖2是根據(jù)本發(fā)明另一個實(shí)施例的信息處理方法的流程圖。這里,圖2的方法可以應(yīng)用到諸如智能手機(jī)、平板電腦或PC之類的終端設(shè)備的Chrome的瀏覽器上,該瀏覽器包含應(yīng)用層和內(nèi)核層。該內(nèi)核層例如可以包括webkit。圖2所示的方法除了圖1所示的步驟S1-S3之外,還可以包括步驟S4和S5:
[0029]在內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將調(diào)用轉(zhuǎn)發(fā)給對應(yīng)的第一插件并由該插件執(zhí)行且產(chǎn)生執(zhí)行結(jié)果之后,在步驟S4中,接收第一插件執(zhí)行第一功能產(chǎn)生的執(zhí)行結(jié)果。這里,接收第一插件執(zhí)行第一功能產(chǎn)生的執(zhí)行結(jié)果的處理也可以由與轉(zhuǎn)發(fā)函數(shù)對應(yīng)的返回函數(shù)實(shí)現(xiàn)。
[0030]在步驟S5中,將所述執(zhí)行結(jié)果返回應(yīng)用層以完成對第一功能的調(diào)用。
[0031]例如,在針對第一功能的調(diào)用為javascript調(diào)用的情況下,上述步驟S1-S5可以由終端設(shè)備的處理單元運(yùn)行特定的javascript檢測程序?qū)崿F(xiàn)。
[0032]在這種情況下,當(dāng)用戶需要調(diào)用特定的功能(如,javascript調(diào)用)時,可以通過步驟S1-S5將該調(diào)用發(fā)送到相應(yīng)的插件,通過由C語言或JAVA語言之類實(shí)現(xiàn)的插件完成相應(yīng)的功能并將執(zhí)行功能的執(zhí)行結(jié)果返回給應(yīng)用層來完成對特定功能的調(diào)用。這樣,不但不需要二次開發(fā)javascript函數(shù),而且在作為底層的插件是C代碼或JAVA代碼的情況下,不但可以完成Javascript不能實(shí)現(xiàn)的功能而且效率要高很多。
[0033]圖3為根據(jù)本發(fā)明一個實(shí)施例的信息處理裝置I的示意方框圖。圖3所示的信息處理裝置I可以是諸如手機(jī)、平板電腦、臺式機(jī)或筆記本電腦之類的終端設(shè)備中的處理單元,并且可以運(yùn)行包括具有應(yīng)用層和內(nèi)核層的瀏覽器。瀏覽器例如可以是Chrome,而內(nèi)核層例如可以包括webkit。該信息處理裝置I可以包括第一接收單元11、確定單元12以及轉(zhuǎn)發(fā)單元13。這里,第一接收單元11、確定單元12以及轉(zhuǎn)發(fā)單元13的功能可以通過由信息處理裝置I的處理單元執(zhí)行預(yù)設(shè)的程序?qū)崿F(xiàn)。
[0034]在用戶在例如頁面的瀏覽器應(yīng)用層通過對第一功能的調(diào)用(如,通過按鍵觸發(fā)或自動運(yùn)行)之后,第一接收單元11用于接收所述應(yīng)用層對第一功能的調(diào)用。瀏覽器的應(yīng)用層對第一功能的調(diào)用可以為javascript調(diào)用。確定單元12用于確定與所調(diào)用的第一功能對應(yīng)的第一插件。由于針對用戶所需的不同功能存在多個插件,確定單元12基于第一功能的名稱和/或ID確定對應(yīng)的第一插件。例如,這些插件可以通過C語言來實(shí)現(xiàn)。此外,根據(jù)本發(fā)明的另一個實(shí)施例,這些插件可以通過Java語言來實(shí)現(xiàn)。此外,本發(fā)明不限于此,還可以使用其它計算機(jī)程序語言來實(shí)現(xiàn)這些插件。
[0035]這里,確定單元12可以使用所調(diào)用的第一功能的名稱和/或ID在查找表(映射表)查詢對應(yīng)的第一插件來確定所調(diào)用的第一功能相應(yīng)的第一插件之間的對應(yīng)關(guān)系。這里,查找表可以存儲各種功能與對應(yīng)的插件之間的對應(yīng)關(guān)系,并且內(nèi)置于終端設(shè)備的存儲單元中。
[0036]轉(zhuǎn)發(fā)單元13可以通過調(diào)用瀏覽器的內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將該調(diào)用轉(zhuǎn)發(fā)給與第一功能對應(yīng)的第一插件以使第一插件執(zhí)行第一功能。
[0037]根據(jù)本發(fā)明的實(shí)施例,在Chrome瀏覽器中,根據(jù)本發(fā)明實(shí)施例的轉(zhuǎn)發(fā)函數(shù)可以是Postmsg函數(shù)。該轉(zhuǎn)發(fā)函數(shù)用于將特定的功能調(diào)用轉(zhuǎn)發(fā)給對應(yīng)的插件,使得該對應(yīng)的插件能夠執(zhí)行該調(diào)用以實(shí)現(xiàn)該特定的功能。例如Chrome瀏覽器內(nèi)核中的Pepper PluginApplication Programming Interface (PPAPI)的 plugin, postmessage 可以是轉(zhuǎn)發(fā)函數(shù)的一個示例,其中plugin可以由與第一功能對應(yīng)的第一插件的插件名替換。
[0038]在這種情況下,在第一插件通過轉(zhuǎn)發(fā)函數(shù)接收到該調(diào)用之后,由C語言或者Java語言之類的計算機(jī)語言實(shí)現(xiàn)的第一插件執(zhí)行來實(shí)現(xiàn)第一功能,并且產(chǎn)生執(zhí)行第一功能的執(zhí)行結(jié)果。
[0039]通過上述方式,當(dāng)用戶需要調(diào)用特定的功能(如,javascript調(diào)用)時,可以通過第一接收單元11、確定單元12以及轉(zhuǎn)發(fā)單元13將該調(diào)用發(fā)送到相應(yīng)的插件,通過由C語言或JAVA語言之類實(shí)現(xiàn)的插件完成相應(yīng)的功能來完成對特定功能的調(diào)用。這樣,不但不需要二次開發(fā)javascript函數(shù),而且在作為底層的插件是C代碼或JAVA代碼的情況下,不但可以完成Javascript不能實(shí)現(xiàn)的功能而且效率要高很多。
[0040]圖4是根據(jù)本發(fā)明另一個實(shí)施例的信息處理裝置的示意方框圖。圖4所示的信息處理裝置可以是諸如手機(jī)、平板電腦、臺式機(jī)或筆記本電腦之類的終端設(shè)備中的處理單元,并且可以運(yùn)行包括具有應(yīng)用層和內(nèi)核層的瀏覽器。瀏覽器例如可以是Chrome,而內(nèi)核層例如可以包括webkit。圖4所示的信息處理裝置除了圖3所示的第一接收單元11、確定單元
12、轉(zhuǎn)發(fā)單元13之外,還包括第二接收單元14以及返回單元15。這里,第二接收單元14和返回單元15的功能也可以通過由信息處理裝置的處理單元執(zhí)行預(yù)設(shè)的程序?qū)崿F(xiàn)。
[0041]在轉(zhuǎn)發(fā)單元13通過調(diào)用內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將該調(diào)用轉(zhuǎn)發(fā)給對應(yīng)的第一插件且該插件執(zhí)行第一功能并產(chǎn)生結(jié)果之后,第二接收單元14可以接收第一插件執(zhí)行第一功能產(chǎn)生的執(zhí)行結(jié)果并且將該執(zhí)行結(jié)果發(fā)送給返回單元15。這里,接收第一插件執(zhí)行第一功能產(chǎn)生的執(zhí)行結(jié)果的處理也可以由與之前描述的轉(zhuǎn)發(fā)函數(shù)對應(yīng)的返回函數(shù)實(shí)現(xiàn)。
[0042]然后,返回單元15將所述執(zhí)行結(jié)果返回應(yīng)用層以完成對第一功能的調(diào)用。
[0043]通過上述方式,當(dāng)用戶需要調(diào)用特定的功能(如,javascript調(diào)用)時,可以通過第一接收單元11、確定單元12、轉(zhuǎn)發(fā)單元13、第二接收單元14以及返回單元15將該調(diào)用發(fā)送至IJ相應(yīng)的插件,通過由C語言或JAVA語言之類實(shí)現(xiàn)的插件完成相應(yīng)的功能并將執(zhí)行功能的執(zhí)行結(jié)果返回給應(yīng)用層來完成對特定功能的調(diào)用。這樣,不但不需要二次開發(fā)javascript函數(shù),而且在作為底層的插件是C代碼或JAVA代碼的情況下,不但可以完成Javascript不能實(shí)現(xiàn)的功能而且效率要高很多。
[0044]此外,本發(fā)明還公開了一種終端設(shè)備,該終端設(shè)備包含具有應(yīng)用層和內(nèi)核層的瀏覽器以及如上所述的信息處理裝置I。這里,終端設(shè)備可以是諸如手機(jī)、平板電腦、臺式機(jī)或筆記本電腦之類的終端設(shè)備。與之前的描述類似,該信息處理裝置I包括:第一接收單元11,用于接收所述應(yīng)用層對第一功能的調(diào)用;確定單元12,用于確定與所調(diào)用的第一功能對應(yīng)的第一插件;轉(zhuǎn)發(fā)單元13用于通過內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將所述調(diào)用轉(zhuǎn)發(fā)給與所述第一功能對應(yīng)的第一插件以使所述第一插件執(zhí)行所述第一功能;第二接收單元14用于接收所述第一插件執(zhí)行所述第一功能產(chǎn)生的執(zhí)行結(jié)果;返回單元15將所述執(zhí)行結(jié)果返回所述應(yīng)用層。
[0045]在上面詳細(xì)描述了本發(fā)明的各個實(shí)施例。然而,本領(lǐng)域技術(shù)人員應(yīng)該理解,在不脫離本發(fā)明的原理和精神的情況下,可對這些實(shí)施例進(jìn)行各種修改,組合或者子組合,并且這樣的修改應(yīng)落入本發(fā)明的范圍內(nèi)。
【權(quán)利要求】
1.一種信息處理方法,應(yīng)用于終端設(shè)備的瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,其特征在于,所述方法包含以下步驟: 接收所述應(yīng)用層對第一功能的調(diào)用; 確定與所調(diào)用的第一功能對應(yīng)的第一插件; 通過內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將所述調(diào)用轉(zhuǎn)發(fā)給與所述第一功能對應(yīng)的第一插件,以使所述第一插件執(zhí)行所述第一功能。
2.如權(quán)利要求1所述的信息處理方法,進(jìn)一步包括: 接收所述第一插件執(zhí)行所述第一功能產(chǎn)生的執(zhí)行結(jié)果;以及 將所述執(zhí)行結(jié)果返回所述應(yīng)用層。
3.如權(quán)利要求1所述的信息處理方法,進(jìn)一步包括:確定與所調(diào)用的第一功能對應(yīng)的第一插件的步驟包括: 基于所述第一功能的名稱和/或ID確定對應(yīng)的第一插件。
4.如權(quán)利要求1所述的信息處理方法,其中 所述應(yīng)用層對第一功能的調(diào)用為javascript調(diào)用;以及 所述轉(zhuǎn)發(fā)函數(shù)為Postmsg函數(shù)。
5.如權(quán)利要求1所述的信息處理方法,其中 所述第一插件由C、JAVA語言中的至少一種實(shí)現(xiàn)。
6.一種信息處理裝置,應(yīng)用于終端設(shè)備的瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,其特征在于,包括: 第一接收單元,接收所述應(yīng)用層對第一功能的調(diào)用; 確定單元,確定與所調(diào)用的第一功能對應(yīng)的第一插件; 轉(zhuǎn)發(fā)單元,通過內(nèi)核層中的轉(zhuǎn)發(fā)函數(shù)將所述調(diào)用轉(zhuǎn)發(fā)給與所述第一功能對應(yīng)的第一插件以使所述第一插件執(zhí)行所述第一功能。
7.根據(jù)權(quán)利要求6所述的信息處理裝置,其特征在于,還包括: 第二接收單元,接收所述第一插件執(zhí)行所述第一功能產(chǎn)生的執(zhí)行結(jié)果; 以及 返回單元,將所述執(zhí)行結(jié)果返回所述應(yīng)用層。
8.根據(jù)權(quán)利要求6所述的信息處理裝置,其特征在于,所述確定單元具體用于基于所述第一功能的名稱和/或ID確定對應(yīng)的第一插件。
9.根據(jù)權(quán)利要求6所述的信息處理裝置,其特征在于,所述應(yīng)用層對第一功能的調(diào)用為javascript調(diào)用;以及 所述轉(zhuǎn)發(fā)函數(shù)為Postmsg函數(shù)。
10.根據(jù)權(quán)利要求6所述的信息處理裝置,其特征在于:所述第一插件由C、JAVA語言中的至少一種實(shí)現(xiàn)。
11.一種終端設(shè)備,所述終端設(shè)備包括瀏覽器,所述瀏覽器包括應(yīng)用層以及內(nèi)核層,其特征在于,所述終端設(shè)備包括:權(quán)利要求6-10任一項(xiàng)所述的信息處理裝置。
【文檔編號】G06F9/48GK103914340SQ201210592796
【公開日】2014年7月9日 申請日期:2012年12月31日 優(yōu)先權(quán)日:2012年12月31日
【發(fā)明者】陳重 申請人:聯(lián)想(北京)有限公司