本發(fā)明涉及設(shè)備檢測技術(shù)領(lǐng)域,特別是涉及檢測安卓終端信息的方法及裝置。
背景技術(shù):
當(dāng)前的手機硬件檢測,大多是基于Windows或Linux系統(tǒng)的上位機連接被檢測手機,并通過安裝被檢測手機對應(yīng)的驅(qū)動程序進行連接,在連接后通過啟動上位機系統(tǒng)中的adb(Android Debug Bridge)服務(wù)發(fā)送相應(yīng)指令給被檢測手機,獲取其信息。例如:把安卓手機通過usb接上Windows的PC,結(jié)果adb并沒有連接上安卓手機,只有在PC上下載并安裝了對應(yīng)的android驅(qū)動程序,adb才能連接上該手機,這樣就可以利用adb shell進入所述安卓手機的android系統(tǒng)以獲取其信息了。
然而,該檢測方法中,由于不同手機的硬件驅(qū)動不一,上位機面面俱到地識別所有機型難度高,代價大;并且安裝對應(yīng)的android驅(qū)動程序進行adb連接的過程耗時較長,導(dǎo)致檢測效率低下。
技術(shù)實現(xiàn)要素:
基于此,本發(fā)明實施例提供檢測安卓終端信息的方法及裝置,能夠建立與待檢測安卓終端的快速adb連接,縮短檢測耗時。
本發(fā)明一方面提供檢測安卓終端信息的方法,包括:
通過OTG方式建立第一安卓設(shè)備與待檢測安卓終端的USB連接,待檢測安卓終端處于USB調(diào)試模式狀態(tài);
通過所述USB連接讀取待檢測安卓終端的連接信息,根據(jù)連接信息確定待檢測安卓終端的可連接性;
啟動所述第一安卓設(shè)備中預(yù)設(shè)的客戶端程序作為ADB服務(wù),通過USB連接對確定為可連接的待檢測安卓終端安裝用于獲取終端型號信息和/或硬件信息的應(yīng)用軟件;
通過ADB服務(wù)向所述應(yīng)用軟件發(fā)送指令,以獲取待檢測安卓終端的型號信息和/或硬件模塊信息。
本發(fā)明另一方面還提供一種檢測安卓終端信息的裝置,包括:
OTG連接模塊,用于通過OTG方式建立第一安卓設(shè)備與待檢測安卓終端的USB連接,待檢測安卓終端處于USB調(diào)試模式狀態(tài);
連接確定模塊,用于通過所述USB連接讀取待檢測安卓終端的連接信息,根據(jù)連接信息確定待檢測安卓終端的可連接性;
快速連接模塊,用于啟動所述第一安卓設(shè)備中預(yù)設(shè)的客戶端程序作為ADB服務(wù),通過USB連接對確定為可連接的待檢測安卓終端安裝用于獲取終端型號信息和/或硬件信息的應(yīng)用軟件;
信息讀取模塊,用于通過ADB服務(wù)向所述應(yīng)用軟件發(fā)送指令,以獲取待檢測安卓終端的型號信息和/或硬件模塊信息。
上述技術(shù)方案,無需將待檢測安卓終端連接基于Windows或Linux系統(tǒng)的上位機,可用任一安卓設(shè)備作為檢測主機,對于不同機型的待檢測安卓終端,檢測主機也無需安裝不同的驅(qū)動程序,避免了連接時驅(qū)動程序的檢索安裝,連接速度更快,耗時更短,且提高了檢測環(huán)境的靈活度。
附圖說明
圖1為一實施例的檢測安卓終端信息的方法的示意性流程圖;
圖2為一實施例的檢測安卓終端信息的方法的應(yīng)用場景圖;
圖3為一具體應(yīng)用場景下的檢測安卓終端信息的方法的示意性流程圖;
圖4為一實施例的檢測安卓終端信息的裝置的示意性結(jié)構(gòu)圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1為一實施例的檢測安卓終端信息的方法的示意性流程圖;在該實施例中,是以該方法應(yīng)用于作為檢測主機的安卓設(shè)備為例進行說明,所述作為檢測主機的安卓設(shè)備可為任意支持OTG連接的安卓平板,所述安卓平板中預(yù)先設(shè)置有用于檢測安卓終端信息的客戶端軟件。
如圖1所示,本實施例中的檢測安卓終端信息的方法包括步驟:
S11,通過OTG方式建立第一安卓設(shè)備(即用于檢測的安卓設(shè)備)與待檢測安卓終端的USB連接,待檢測安卓終端處于USB調(diào)試模式狀態(tài);
OTG是On-The-Go的縮寫,是近年發(fā)展起來的技術(shù),由USB ImplementersForum公布,主要應(yīng)用于各種不同的設(shè)備或移動設(shè)備間的聯(lián)接,進行數(shù)據(jù)交換。OTG技術(shù)就是在沒有Host的情況下,實現(xiàn)設(shè)備間的數(shù)據(jù)傳送。例如數(shù)碼相機直接連接到打印機上,通過OTG技術(shù),連接兩臺設(shè)備間的USB口,將拍出的相片立即打印出來;也可以將數(shù)碼照相機中的數(shù)據(jù),通過OTG發(fā)送到USB接口的移動硬盤上,野外操作就沒有必要攜帶價格昂貴的存儲卡,或者背一個便攜電腦。
S12,通過所述USB連接讀取待檢測安卓終端的連接信息,根據(jù)連接信息確定待檢測安卓終端的可連接性;
本發(fā)明實施例中,在USB連接中提取連接信息包括待檢測安卓終端的USB接口信息,具體如USB制造商、USB產(chǎn)品、序列號等。
優(yōu)選的,所述確定待檢測安卓終端的可連接性包括:檢測是否需要RSA認證;若是,進行RSA認證,若確認通過RSA認證,則確定為待檢測安卓終端的可連接。RSA是公鑰加密算法,它能夠抵抗到目前為止已知的絕大多數(shù)密碼攻擊,已被ISO推薦為公鑰數(shù)據(jù)加密標準。通過進行通過RSA認證,以提高設(shè)備的安全性。
S13,啟動所述第一安卓設(shè)備中預(yù)設(shè)的客戶端程序作為ADB服務(wù),通過USB連接對確定為可連接的待檢測安卓終端安裝用于獲取終端型號信息和/或硬件信息的應(yīng)用軟件;
優(yōu)選的,在啟動ADB服務(wù)后,對確定為可連接的待檢測安卓終端安裝用于獲取終端型號信息和/或硬件信息的應(yīng)用軟件的之前,還包括通過ADB的功能提取待檢測安卓終端的部分基本信息,以手機為例,包括手機的model、安卓版本、安卓品牌、該手機的IMEI號、該手機的CPU核數(shù)、該手機的CPU時鐘速度、該手機的CPU架構(gòu)、該手機的內(nèi)存RAM、機身存儲空間大小、該手機的內(nèi)存ROM、該手機的GPU型號、屏幕分辨率大小、屏幕像素、設(shè)備版本號、設(shè)備名等信息。
S14,通過ADB服務(wù)向所述應(yīng)用軟件發(fā)送指令,以獲取待檢測安卓終端的型號信息和/或硬件模塊信息。
本發(fā)明實施例中,所述硬件模塊信息具體包括CPU、內(nèi)存、WiFi模塊、通訊模塊、藍牙模塊、重力傳感器、磁力傳感器、光線傳感器、前置攝像頭、后置攝像頭、手寫可用性、喇叭等信息。優(yōu)選的,通過所述第一安卓設(shè)備中的客戶端程序向所述應(yīng)用軟件發(fā)送指令,以獲取待檢測安卓終端的型號信息和/或硬件模塊信息的步驟包括:通過ADB服務(wù)打開socket連接,通過socket連接發(fā)送指令給所述應(yīng)用軟件;循環(huán)讀取所述socket的回傳信息;讀取到信息則記錄,讀取到結(jié)束符號則關(guān)閉傳輸流,將記錄的信息回傳。
本發(fā)明實施例中,以安卓手機作為待檢測安卓終端為例,安卓平板中的所述客戶端軟件替換系統(tǒng)ADB服務(wù),打開ADB服務(wù),將所述手機與運行了客戶端軟件的平板用OTG線進行連接,平板作為上位機;首先通過USB連接獲取手機的連接信息,判斷是否需要RSA認證,若需要則進行RSA認證;若不需要或者認證通過,則控制所述手機安裝用于獲取手機型號信息和/或硬件信息的應(yīng)用軟件,以完成快速連接。
其中,用安卓平板中的所述客戶端軟件替換系統(tǒng)ADB服務(wù)的處理包括:獲取安卓平板系統(tǒng)ADB服務(wù)的ADB代碼,搭建集成編譯環(huán)境,重新打包為安卓環(huán)境下生成完整的ADB庫,將完整庫編譯入所述客戶端軟件中,至此所述客戶端軟件運行時便能替換平板自帶的系統(tǒng)ADB服務(wù)。通過所述客戶端軟件替換系統(tǒng)ADB服務(wù)的方式,可很好的解決安卓平板自帶的ADB服務(wù)某些功能不全的問題。
其中,安裝應(yīng)用軟件,完成快速連接的步驟包括:發(fā)送打開socket端口指令,打開相應(yīng)的socket端口,傳輸用于獲取終端型號信息和/或硬件信息的應(yīng)用軟件的安裝包至手機,安裝包寫入手機存儲,手機ADB處理安裝包并完成安裝,完成平板與手機的ADB快速連接。
與現(xiàn)有的連接技術(shù)相比,本發(fā)明作為檢測主機的平板與被檢測的手機操作系統(tǒng)一致,且平板無需對于不同機型的手機安裝不同的驅(qū)動程序,免于連接時的檢索安裝,連接速度更快。
圖2為本發(fā)明一實施例的檢測安卓終端信息的方法的應(yīng)用場景圖,如圖2所示,所述應(yīng)用場景包括:運行有預(yù)設(shè)客戶端軟件的安卓設(shè)備100以及云端服務(wù)器200。所述安卓設(shè)備100通過OTG線與待檢測安卓終端300的USB連接,待檢測安卓終端300處于USB調(diào)試模式狀態(tài)。所述安卓設(shè)備100可為安卓平板,所述待檢測安卓終端300可為安卓手機。下面結(jié)合圖2、圖3對本發(fā)明實施例的檢測安卓終端信息的方法進行了更進一步的解釋。
如圖3所示,本實施例中的檢測安卓終端信息的方法包括步驟:
S21.打開安卓平板中預(yù)設(shè)的客戶端軟件;啟動客戶端軟件的adb server(adb服務(wù))
S22.采用OTG方式連接開啟了USB調(diào)試模式的手機;
S23.打開USB連接,并讀取記錄手機的連接信息;
S24.是否需要RSA認證,如果需要則認證;
S25.檢測手機的連接性,可采用adb devices命令查看當(dāng)前連接的手機;
S26.客戶端軟件顯示操作界面,可將已連接的手機顯示出來;
S27.用戶點擊操作界面中的連接按鈕,客戶端軟件推送檢測詳細信息的應(yīng)用到手機;
S28.手機安裝該應(yīng)用;
S29.啟動手機的該應(yīng)用,打開socket連接,采集手機的硬件模塊信息;
S30.關(guān)閉socket連,卸載手機中安裝的所述應(yīng)用,以及時釋放被檢測手機的系統(tǒng)資源。
同時,所述安卓設(shè)備100還將獲取到的待檢測安卓終端300的硬件模塊信息進行處理,并在處理后上傳到云端服務(wù)器200,以對所述手機的硬件信息進行檢測,并接收所述云端服務(wù)器200返回的檢測結(jié)果,通過對應(yīng)的顯示界面顯示出來。
需要說明的是,對于前述的各方法實施例,為了簡便描述,將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其它順序或者同時進行。
基于與上述實施例中的檢測安卓終端信息的方法相同的思想,本發(fā)明還提供檢測安卓終端信息的裝置,該裝置可用于執(zhí)行上述檢測安卓終端信息的方法。為了便于說明,檢測安卓終端信息的裝置實施例的結(jié)構(gòu)示意圖中,僅僅示出了與本發(fā)明實施例相關(guān)的部分,本領(lǐng)域技術(shù)人員可以理解,圖示結(jié)構(gòu)并不構(gòu)成對裝置的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。
圖4為本發(fā)明一實施例的檢測安卓終端信息的裝置的示意性結(jié)構(gòu)圖,該裝置可以應(yīng)用于任意支持OTG連接的安卓設(shè)備,例如安卓平板。如圖4所示,本實施例的檢測安卓終端信息的裝置包括:OTG連接模塊310、連接確定模塊320、快速連接模塊330以及信息讀取模塊340,各模塊詳述如下:
所述OTG連接模塊310,用于通過OTG方式建立第一安卓設(shè)備與待檢測安卓終端的USB連接,待檢測安卓終端處于USB調(diào)試模式狀態(tài);
OTG是On-The-Go的縮寫,是近年發(fā)展起來的技術(shù),由USB ImplementersForum公布,主要應(yīng)用于各種不同的設(shè)備或移動設(shè)備間的聯(lián)接,進行數(shù)據(jù)交換。
連接確定模塊320,用于通過所述USB連接讀取待檢測安卓終端的連接信息,根據(jù)連接信息確定待檢測安卓終端的可連接性;
優(yōu)選的,所述連接信息包括:待檢測安卓終端的USB接口信息。
快速連接模塊330,用于啟動所述第一安卓設(shè)備中預(yù)設(shè)的客戶端程序作為ADB服務(wù),通過USB連接對確定為可連接的待檢測安卓終端安裝用于獲取終端型號信息和/或硬件信息的應(yīng)用軟件;
優(yōu)選的,所述快速連接模塊330,還用于獲取第一安卓設(shè)備的系統(tǒng)ADB服務(wù)的ADB代碼,搭建集成編譯環(huán)境;重新打包生成完整的ADB庫,將所述ADB庫編譯入預(yù)設(shè)的客戶端軟件中。
信息讀取模塊340,用于通過ADB服務(wù)向所述應(yīng)用軟件發(fā)送指令,以獲取待檢測安卓終端的型號信息和/或硬件模塊信息。優(yōu)選的,所述硬件模塊信息包括:CPU、內(nèi)存、WiFi模塊、通訊模塊、藍牙模塊、重力傳感器、磁力傳感器、光線傳感器、前置攝像頭、后置攝像頭、手寫功能模塊、喇叭等的一種或多種的信息。
優(yōu)選的,所述信息讀取模塊340包括:指令發(fā)送單元401,用于通過ADB服務(wù)打開socket連接,通過socket連接發(fā)送指令給所述應(yīng)用軟件;信息讀取單元402,用于循環(huán)讀取所述socket的回傳信息;讀取到信息則記錄,讀取到結(jié)束符號則關(guān)閉傳輸流,將記錄的信息回傳。
優(yōu)選的,所述快速連接模塊330,還用于在獲取待檢測安卓終端的型號信息和/或硬件模塊信息之后,關(guān)閉所述socket連接,刪除待檢測安卓終端的所述應(yīng)用軟件。
優(yōu)選的,所述連接確定模塊320,還用于檢測是否需要RSA認證;若是,進行RSA認證,若確認通過RSA認證,則確定為待檢測安卓終端可連接。
需要說明的是,上述示例的檢測安卓終端信息的裝置的實施方式中,各模塊/單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明前述方法實施例基于同一構(gòu)思,其帶來的技術(shù)效果與本發(fā)明前述方法實施例相同,具體內(nèi)容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。
此外,上述示例的檢測安卓終端信息的裝置的實施方式中,各功能模塊的邏輯劃分僅是舉例說明,實際應(yīng)用中可以根據(jù)需要,例如出于相應(yīng)硬件的配置要求或者軟件的實現(xiàn)的便利考慮,將上述功能分配由不同的功能模塊完成,即將所述檢測安卓終端信息的裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。其中各功能模既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。
本領(lǐng)域普通技術(shù)人員可以理解,實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,作為獨立的產(chǎn)品銷售或使用。所述程序在執(zhí)行時,可執(zhí)行如上述各方法的實施例的全部或部分步驟。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。
在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其它實施例的相關(guān)描述??梢岳斫猓渲兴褂玫男g(shù)語“第一”、“第二”等在本文中用于區(qū)分對象,但這些對象不受這些術(shù)語限制。
以上所述實施例僅表達了本發(fā)明的幾種實施方式,不能理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應(yīng)以所附權(quán)利要求為準。