本發(fā)明涉及移動(dòng)終端技術(shù)領(lǐng)域,尤其涉及一種移動(dòng)終端及其字符串信息的獲取方法。
背景技術(shù):
隨著電子技術(shù)的發(fā)展,移動(dòng)終端成為人們?nèi)粘I钪胁豢扇鄙俚碾娮釉O(shè)備。在移動(dòng)終端使用過程中通常需要對界面中的字符串進(jìn)行識(shí)別,以顯示字符串所對應(yīng)的信息。目前Android平臺(tái)基本上都是需要工程師手動(dòng)去查找字符串對應(yīng)的ID或字符串的寬度、高度和大小,這項(xiàng)工作比較繁瑣,特別是在通過工程源碼查找的過程,耗費(fèi)了工程師很大一部分工作量。當(dāng)需獲取多個(gè)字符串的信息時(shí),目前的方法非常影響效率。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)的不足,本發(fā)明提供一種移動(dòng)終端及其字符串信息的獲取方法,能夠自動(dòng)識(shí)別并獲取字符串的信息,工作量較小、效率較高。
本發(fā)明提出的具體技術(shù)方案為:提供一種字符串信息的獲取方法,包括步驟:識(shí)別字符串;獲取所述字符串的ID;根據(jù)所述ID對所述字符串進(jìn)行翻譯,以獲得翻譯后的字符串;對所述翻譯后的字符串進(jìn)行解析,以獲得所述字符串的參數(shù)信息;顯示所述字符串的ID和參數(shù)信息。
進(jìn)一步地,所述字符串的參數(shù)信息包括字符串的寬度、高度及大小。
進(jìn)一步地,在識(shí)別字符串后存儲(chǔ)所述字符串。
進(jìn)一步地,在顯示所述字符串的ID和參數(shù)信息之前存儲(chǔ)所述翻譯后的字符串、所述字符串的ID和參數(shù)信息。
進(jìn)一步地,所述翻譯后的字符串、所述字符串及所述字符串的ID和參數(shù)信息通過哈希表進(jìn)行存儲(chǔ)。
進(jìn)一步地,所述哈希表的數(shù)據(jù)類型為ValueItem數(shù)據(jù)類型。
進(jìn)一步地,所述字符串的ID為整數(shù)型。
進(jìn)一步地,所述翻譯后的字符串為XML數(shù)據(jù)類型。
本發(fā)明還提供了一種移動(dòng)終端,包括:識(shí)別模塊,用于識(shí)別字符串;ID獲取模塊,用于獲取所述字符串的ID;翻譯模塊,用于根據(jù)所述ID對所述字符串進(jìn)行翻譯,以獲得翻譯后的字符串;解析模塊,用于對所述翻譯后的字符串進(jìn)行解析,以獲得所述字符串的參數(shù)信息;顯示模塊,用于顯示所述字符串的ID和參數(shù)信息。
進(jìn)一步地,所述移動(dòng)終端還包括緩存模塊,所述緩存模塊用于在所述識(shí)別模塊識(shí)別字符串后存儲(chǔ)所述字符串以及在所述顯示模塊顯示所述字符串的ID和參數(shù)信息之前存儲(chǔ)所述翻譯后的字符串、所述字符串的ID和參數(shù)信息。
本發(fā)明提出的移動(dòng)終端及其字符串信息的獲取方法,能夠自動(dòng)識(shí)別移動(dòng)終端界面上的字符串,然后自動(dòng)獲取所述字符串的ID和參數(shù)信息并顯示,不需要手動(dòng)對字符串進(jìn)行識(shí)別和獲取字符串的ID和參數(shù)信息,大大降低了工作量、提升了效率。
附圖說明
下面結(jié)合附圖,通過對本發(fā)明的具體實(shí)施方式詳細(xì)描述,將使本發(fā)明的技術(shù)方案及其它有益效果顯而易見。
圖1為移動(dòng)終端的電路模塊示意圖;
圖2為字符串信息的獲取方法的流程圖。
具體實(shí)施方式
以下,將參照附圖來詳細(xì)描述本發(fā)明的實(shí)施例。然而,可以以許多不同的形式來實(shí)施本發(fā)明,并且本發(fā)明不應(yīng)該被解釋為限制于這里闡述的具體實(shí)施例。相反,提供這些實(shí)施例是為了解釋本發(fā)明的原理及其實(shí)際應(yīng)用,從而使本領(lǐng)域的其他技術(shù)人員能夠理解本發(fā)明的各種實(shí)施例和適合于特定預(yù)期應(yīng)用的各種修改。在附圖中,相同的標(biāo)號(hào)將始終被用于表示相同的元件。
參照圖1,本實(shí)施例提供的移動(dòng)終端包括識(shí)別模塊1、ID獲取模塊2、翻譯模塊3、解析模塊4及顯示模塊5。本實(shí)施例的移動(dòng)終端是基于Android平臺(tái),下面具體描述基于Android平臺(tái)的各個(gè)模塊的工作原理。
識(shí)別模塊1用于對移動(dòng)終端正在運(yùn)行的進(jìn)程所對應(yīng)的界面上的字符串進(jìn)行識(shí)別。識(shí)別模塊1可以通過多種方式進(jìn)行識(shí)別,例如,識(shí)別模塊1可以根據(jù)移動(dòng)終端的觸摸屏是否被觸摸來選擇性的對某個(gè)字符串進(jìn)行識(shí)別,即當(dāng)用戶觸摸正在運(yùn)行的進(jìn)程所對應(yīng)的界面上的字符串時(shí),識(shí)別模塊1識(shí)別位于用戶觸摸位置的字符串。識(shí)別模塊1也可以對正在運(yùn)行的進(jìn)程所對應(yīng)的界面上的所有字符串進(jìn)行識(shí)別,當(dāng)然也可以采用其他的方式進(jìn)行識(shí)別,這里不做限定。
ID獲取模塊2用于接收識(shí)別到的字符串并獲取所述字符串的ID,優(yōu)選的,字符串的ID是整數(shù)型,字符串的ID通常為一個(gè)32bit的數(shù)字,其格式是PPTTNNNN,PP代表資源所屬的包(package),TT代表資源的類型(type),NNNN代表在所述資源包中這個(gè)類型下面的資源的編號(hào),例如,字符串的ID為7F010003,其中,7F表示該資源屬于應(yīng)用APK包資源,01表示該資源屬于系統(tǒng)資源包中的資源,0003表示該資源在所屬資源包中類型為系統(tǒng)資源包的資源中的編號(hào)。
由于本實(shí)施例中的移動(dòng)終端是基于Android平臺(tái),在Android平臺(tái)中可讀的數(shù)據(jù)類型為XML的數(shù)據(jù)類型,因此,需要對整數(shù)型的字符串的ID進(jìn)行翻譯,以獲得XML數(shù)據(jù)類型的字符串。翻譯模塊3用于根據(jù)字符串的ID對字符串進(jìn)行翻譯,以獲得翻譯后的字符串,其中,翻譯后的字符串為XML數(shù)據(jù)類型。
在獲得翻譯后的字符串后,需要根據(jù)翻譯后的字符串獲取其對應(yīng)的參數(shù)信息,其中,獲得的翻譯后的字符串的參數(shù)信息即為識(shí)別到的字符串的參數(shù)信息。因此,解析模塊4用于對翻譯后的字符串進(jìn)行解析,以獲得翻譯后的字符串的參數(shù)信息即識(shí)別到的字符串的參數(shù)信息,優(yōu)選的,字符串的參數(shù)信息包括字符串的寬度、高度及大小。
顯示模塊5為移動(dòng)終端的顯示屏,其對字符串的ID和參數(shù)信息進(jìn)行顯示,當(dāng)然可以根據(jù)用戶的需要選擇性的對字符串的一些信息進(jìn)行顯示,也可以對字符串、翻譯后的字符串及字符串的ID和參數(shù)信息全部進(jìn)行顯示。
在界面顯示或者導(dǎo)出的時(shí)候,需要反復(fù)的獲取字符串及其ID和參數(shù)信息,因此,移動(dòng)終端還包括緩存模塊6,每個(gè)進(jìn)程都對應(yīng)一個(gè)緩存模塊6,其用于存儲(chǔ)對應(yīng)的進(jìn)程的字符串信息。緩存模塊6用于在識(shí)別模塊1識(shí)別字符串后對字符串進(jìn)行存儲(chǔ),此外,緩存模塊6還用于在顯示模塊5顯示字符串的ID和參數(shù)信息之前存儲(chǔ)翻譯后的字符串、字符串的ID和參數(shù)信息。這樣,需要再次獲取該進(jìn)程所對應(yīng)的字符串信息時(shí)只需要直接從所述緩存模塊6中獲取便可。
其中,緩存模塊6通過哈希表對翻譯后的字符串、字符串及字符串的ID和參數(shù)信息進(jìn)行存儲(chǔ)。哈希表的數(shù)據(jù)類型為ValueItem數(shù)據(jù)類型。
除此之外,由于移動(dòng)終端包括多個(gè)進(jìn)程,在運(yùn)行一個(gè)進(jìn)程的時(shí)候有可能需要使用另一個(gè)進(jìn)程的字符串信息,但是,不同進(jìn)程之間的資源不能共享,即一個(gè)進(jìn)程需要使用另一個(gè)進(jìn)程的字符串信息時(shí),其不能從另一個(gè)進(jìn)程的緩存模塊中獲取另一個(gè)進(jìn)程的字符串信息。因此,本實(shí)施例中的移動(dòng)終端還包括存儲(chǔ)模塊(圖未標(biāo)),存儲(chǔ)模塊用于存儲(chǔ)所有進(jìn)程的字符串信息,這樣在一個(gè)進(jìn)程需要使用另一個(gè)進(jìn)程的字符串信息時(shí),其可以從存儲(chǔ)模塊中獲得另一個(gè)進(jìn)程的字符串信息。
參照圖2,本實(shí)施例還提供了一種上述移動(dòng)終端的字符串信息的獲取方法,所述方法包括以下步驟:
步驟S1、識(shí)別模塊1識(shí)別字符串,其中,緩存模塊6在識(shí)別模塊1識(shí)別字符串后存儲(chǔ)所述字符串;
步驟S2、ID獲取模塊2獲取字符串的ID;
步驟S3、翻譯模塊3根據(jù)字符串的ID對字符串進(jìn)行翻譯,以獲得翻譯后的字符串;
步驟S4、解析模塊4對翻譯后的字符串進(jìn)行解析,以獲得字符串的參數(shù)信息,其中,緩存模塊6在解析模塊4對翻譯后的字符串進(jìn)行解析并獲得字符串的參數(shù)信息后存儲(chǔ)翻譯后的字符串、字符串的ID和參數(shù)信息;
步驟S5、顯示模塊5顯示字符串的ID和參數(shù)信息,其中,顯示模塊5可以根據(jù)用戶的需要選擇性的對字符串的一些信息進(jìn)行顯示,也可以對字符串、翻譯后的字符串及字符串的ID和參數(shù)信息全部進(jìn)行顯示。
本實(shí)施例提出的移動(dòng)終端及其字符串信息的獲取方法,能夠自動(dòng)識(shí)別移動(dòng)終端界面上的字符串,然后自動(dòng)獲取所述字符串的ID和參數(shù)信息并顯示,不需要手動(dòng)對字符串進(jìn)行識(shí)別和獲取字符串的ID和參數(shù)信息,大大降低了工作量、提升了效率。
以上所述僅是本申請的具體實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本申請?jiān)淼那疤嵯拢€可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本申請的保護(hù)范圍。