一種安卓行為事件的觸發(fā)方法和觸發(fā)裝置制造方法
【專利摘要】本發(fā)明公開了一種安卓行為事件的觸發(fā)方法,包括以下步驟:發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器;安卓設(shè)備或安卓模擬器讀取所述觸發(fā)消息,并觸發(fā)所述觸發(fā)消息對應(yīng)的行為事件。本發(fā)明通過預(yù)設(shè)的觸發(fā)消息直接發(fā)送到安卓設(shè)備或安卓模擬器,讓安卓設(shè)備或安卓模擬器讀取并觸發(fā)該觸發(fā)消息。本發(fā)明解決了手工測試效率不高的問題。
【專利說明】一種安卓行為事件的觸發(fā)方法和觸發(fā)裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及安卓操作系統(tǒng),尤其是安裝在安裝操作系統(tǒng)的安卓行為事件的觸發(fā)方法和觸發(fā)裝置。
【背景技術(shù)】
[0002]Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要應(yīng)用于便攜設(shè)備,如智能手機(jī)和平板電腦。Android中文名多稱為安卓。目前安裝安卓操作系統(tǒng)的硬件設(shè)備包括了智能手機(jī)和平板電腦,還包括一些安卓模擬器。由于安卓操作系統(tǒng)的快速發(fā)展,使用安卓操作系統(tǒng)的硬件設(shè)備的人們越來越多,應(yīng)用于安卓手機(jī)或安卓平板電腦的軟件越來越多,這些應(yīng)用都需要經(jīng)過測試才能發(fā)布使用。
[0003]現(xiàn)在已經(jīng)出現(xiàn)了一些可以模擬真實(shí)安卓設(shè)備的安卓模擬器。安卓(Android)模擬器是一種模擬安裝有安卓操作系統(tǒng)的模擬器,其能模擬真實(shí)安卓設(shè)備的運(yùn)行環(huán)境,以計(jì)算機(jī)硬件模擬手機(jī)硬件,實(shí)現(xiàn)真實(shí)安卓設(shè)備的模擬。通過安卓模擬器可以在電腦中模擬真實(shí)的安卓設(shè)備。通過在安卓模擬器的操作,也可以測試出安卓設(shè)備的運(yùn)行狀況。
[0004]傳統(tǒng)的測試是使用真實(shí)的安卓設(shè)備進(jìn)行手工測試。測試安卓設(shè)備的運(yùn)行狀態(tài)需要通過不同的安卓設(shè)備之間進(jìn)行操作。比如接電話,通過另一臺安卓手機(jī)打電話到需要測試的安卓手機(jī)才能發(fā)現(xiàn)被測試的安卓手機(jī)的接電話功能是否正常。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的,就是克服現(xiàn)有技術(shù)的不足,提供一種在電腦中測試安卓設(shè)備或模擬器,而不需要通過多個(gè)真實(shí)設(shè)備或者通過手工點(diǎn)擊模擬器以測試安卓操作系統(tǒng)或者應(yīng)用軟件,只要通過預(yù)設(shè)的觸發(fā)消息就可以實(shí)現(xiàn)安卓行為事件的觸發(fā)方法和觸發(fā)裝置。
[0006]為了達(dá)到上述目的,采用如下技術(shù)方案:
[0007]—種安卓行為事件的觸發(fā)方法,包括以下步驟:
[0008]發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器;安卓設(shè)備或安卓模擬器讀取所述觸發(fā)消息,并觸發(fā)所述觸發(fā)消息對應(yīng)的行為事件。
[0009]進(jìn)一步地,所述預(yù)設(shè)的觸發(fā)消息包括行為消息和觸發(fā)對應(yīng)行為的條件消息,安卓設(shè)備或
[0010]安卓模擬器根據(jù)條件消息,觸發(fā)行為消息對應(yīng)的行為事件。
[0011]進(jìn)一步地,所述發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器具體包括以下步驟:指定安卓模擬器或安卓設(shè)備的通訊端口,重定向該通訊端口到計(jì)算機(jī)端口上;通過計(jì)算機(jī)的端口發(fā)送所述觸發(fā)消息到與該計(jì)算機(jī)端口對應(yīng)的安卓模擬器或安卓設(shè)備的通訊端□。
[0012]一種安卓行為事件的觸發(fā)裝置,包括發(fā)送模塊,用于發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器;觸發(fā)模塊,用于觸發(fā)所述觸發(fā)消息對應(yīng)的行為事件。
[0013]進(jìn)一步地,所述發(fā)送模塊包括端口單元,其用于分配安卓模擬器或安卓設(shè)備的通訊端口,建立安卓模擬器或安卓設(shè)備的通訊端口與電腦端口的連接;發(fā)送單元,發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器。
[0014]進(jìn)一步地,所述安卓設(shè)備包括安裝有安卓系統(tǒng)的手機(jī)或平板電腦。
[0015]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:
[0016]本發(fā)明通過預(yù)設(shè)的觸發(fā)消息直接發(fā)送到安卓設(shè)備或安卓模擬器,讓安卓設(shè)備或安卓模擬器讀取并觸發(fā)該觸發(fā)消息。本發(fā)明解決了手工測試效率不高的問題。
【專利附圖】
【附圖說明】
[0017]圖1是本發(fā)明所述一種安卓行為事件的觸發(fā)方法的步驟流程圖;
[0018]圖2是本發(fā)明所述一種安卓行為事件的觸發(fā)裝置的結(jié)構(gòu)示意圖。
[0019]圖不:I—發(fā)送模塊;11 一端口單兀;12—發(fā)送單兀;2—觸發(fā)模塊。
【具體實(shí)施方式】
[0020]下面將結(jié)合附圖以及具體實(shí)施方法來詳細(xì)說明本發(fā)明,在本發(fā)明的示意性實(shí)施及說明用來解釋本發(fā)明,但并不作為對本發(fā)明的限定。
[0021]請參閱圖1,其為本發(fā)明一種安卓行為事件的觸發(fā)方法的步驟流程圖,包括以下步驟:
[0022]SlO:發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器。
[0023]具體地,利用現(xiàn)有的ADB工具發(fā)送觸發(fā)消息?!癆DB”的英文全稱為“Android DebugBridge”,安卓調(diào)試橋。通過ADB可以在Eclipse中通過DDMS來調(diào)試Android程序,實(shí)際就是程序除錯(cuò)工具。Eclipse是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺。ADB的工作方式比較特殊,采用監(jiān)聽Socket TCP5554等端口的方式讓IDE和QEMU通訊,默認(rèn)情況下ADB會daemon相關(guān)的網(wǎng)絡(luò)端口,所以當(dāng)我們運(yùn)行Eclipse時(shí)ADB進(jìn)程就會自動運(yùn)行。QEMU是一套模擬處理器的自由軟件,其能模擬接近電腦處理器的速度。Daemon程序,又稱為守護(hù)進(jìn)程,通常在系統(tǒng)后臺長時(shí)間運(yùn)行,由于沒有控制終端而無法與前臺交互,Daemon程序一般作為系統(tǒng)服務(wù)使用。ADB是安卓軟件開發(fā)工具包(Android SDK)里的一個(gè)工具,用這個(gè)工具可以直接操作管理安卓模擬器或者真實(shí)的安卓設(shè)備。SDK (Software Development Kit,即軟件開發(fā)工具包)。借助ADB工具,可以管理設(shè)備或手機(jī)安卓模擬器的狀態(tài)。還可以進(jìn)行很多手機(jī)操作,如安裝軟件、系統(tǒng)升級、運(yùn)行shell命令等等。
[0024]所述預(yù)設(shè)的觸發(fā)消息包括行為消息和觸發(fā)對應(yīng)行為的條件消息。所述行為消息指安卓設(shè)備或安卓模擬器能夠識別的行為指令,例如接電話、收信息、安裝指定程序等安卓操作系統(tǒng)中已有的行為指令。所述條件消息指觸發(fā)安卓設(shè)備或安卓模擬器執(zhí)行行為指令所需要的條件。例如通過ADB,指定安卓模擬器的端口通過現(xiàn)有技術(shù)重定向指定到一個(gè)PC端口號上。使用的命令:“adb.exe_s emulator_5554forward tcp: 55544939”。其中 adb.exe是安卓開發(fā)包自帶的安卓調(diào)試橋。“emulator-5554”是目標(biāo)安卓模擬器的安卓模擬器名。“5554”是目標(biāo)安卓模擬器的通訊端口號,“4939”是重定向的端口號,這兩個(gè)端口號不同。通過設(shè)定計(jì)算機(jī)的端口和模擬器或安卓設(shè)備的通訊端口,實(shí)現(xiàn)電腦和模擬器或安卓設(shè)備的連接。建立通訊連接后,發(fā)送觸發(fā)消息到安卓設(shè)備或安卓模擬器。觸發(fā)消息預(yù)先設(shè)定,通過編程令觸發(fā)消息按照需求發(fā)送至拿貨設(shè)備或安卓模擬器。[0025]S20:安卓設(shè)備或安卓模擬器根據(jù)條件消息,觸發(fā)行為消息對應(yīng)的行為事件。
[0026]具體地,通過ADB發(fā)送觸發(fā)消息至安卓設(shè)備或安卓模擬器。安卓設(shè)備或安卓模擬器根據(jù)指令信息觸發(fā)對應(yīng)的行為事件。舉例,步驟SlO通過ADB發(fā)送指令:“smssendl0086test”。安卓手機(jī)或安卓模擬器接收這個(gè)指令。這個(gè)指令包含4部分,“sms send”是一個(gè)固定格式,實(shí)際就是行為消息。“10086”是一個(gè)號碼,“test”是短信的內(nèi)容。條件消息是10086發(fā)送的內(nèi)容為test。通過ADB向通訊端口號發(fā)送這個(gè)指令時(shí),安卓模擬器或安卓設(shè)備會接收到來自10086號碼,內(nèi)容為test的短信。再舉例:打電話指令為“gsm call 10086"這個(gè)指令。這個(gè)指令的“gsm call”是一個(gè)固定格式,為打電話操作的行為消息?!?0086”為條件消息。當(dāng)安卓模擬器或安卓設(shè)備接收到這個(gè)指令時(shí),顯示來自號碼為10086的電話打入。再例如,啟動程序的指令為:“adb.exe-s [安卓模擬器名]shell am start_n[APK的包名]/[對應(yīng)APK程序的啟動函數(shù)]”。安卓模擬器名、APK的包名、對應(yīng)APK程序的啟動函數(shù)都是指定的參數(shù),為可變值,其它的是固定格式?!皊hell am start”為行為消息,啟動APK包名或?qū)?yīng)APK程序的啟動函數(shù)。條件消息是安卓模擬器名、APK的包名、對應(yīng)APK程序的啟動函數(shù)。通過安卓模擬器名可以指定對應(yīng)的安卓模擬器,通過APK的包名、對應(yīng)APK程序的啟動函找到對應(yīng)的程序。由于這些指令都是安卓設(shè)備或安卓模擬器識別的指令,通過這些指令可以觸發(fā)安卓設(shè)備或安卓模擬器相應(yīng)的行為,從而觀察這些行為是否正常。
[0027]請參閱圖2,其為一種安卓行為事件的觸發(fā)裝置,包括發(fā)送模塊I和觸發(fā)模塊2。所述發(fā)送模塊I包括端口單元11和發(fā)送單元12。所述端口單元11用于分配安卓模擬器或安卓設(shè)備的通訊端口,建立安卓模擬器或安卓設(shè)備的通訊端口與電腦端口的連接。端口單元11分配安卓模擬器或安卓設(shè)備通訊端口,將通訊端口重定向至電腦端口,實(shí)現(xiàn)兩者之間的通訊連接。所述發(fā)送單元12,通過電腦端口發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器。由觸發(fā)模塊2接收該觸發(fā)消息并觸發(fā)所述觸發(fā)消息對應(yīng)的行為事件。所述觸發(fā)模塊2設(shè)于安卓設(shè)備或安卓模擬器。通過ADB,可以實(shí)現(xiàn)電腦與安卓設(shè)備或安卓模擬器的連接。作為優(yōu)選,所述安卓設(shè)備包括安裝有安卓系統(tǒng)的手機(jī)或平板電腦。
[0028]以上對本發(fā)明實(shí)施例所提供的技術(shù)方案進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對本發(fā)明實(shí)施例的原理以及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只適用于幫助理解本發(fā)明實(shí)施例的原理;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明實(shí)施例,在【具體實(shí)施方式】以及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【權(quán)利要求】
1.一種安卓行為事件的觸發(fā)方法,其特征在于,包括以下步驟: 發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器; 安卓設(shè)備或安卓模擬器讀取所述觸發(fā)消息,并觸發(fā)所述觸發(fā)消息對應(yīng)的行為事件。
2.根據(jù)權(quán)利要求1所述的安卓行為事件的觸發(fā)方法,其特征在于:所述預(yù)設(shè)的觸發(fā)消息包括行為消息和觸發(fā)對應(yīng)行為的條件消息,安卓設(shè)備或安卓模擬器根據(jù)條件消息,觸發(fā)行為消息對應(yīng)的行為事件。
3.根據(jù)權(quán)利要求1所述的安卓行為事件的觸發(fā)方法,其特征在于:所述發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器具體包括以下步驟: 指定安卓模擬器或安卓設(shè)備的通訊端口,重定向該通訊端口到計(jì)算機(jī)端口上; 通過計(jì)算機(jī)的端口發(fā)送所述觸發(fā)消息到與該計(jì)算機(jī)端口對應(yīng)的安卓模擬器或安卓設(shè)備的通訊端口。
4.一種安卓行為事件的觸發(fā)裝置,其特征在于:包括發(fā)送模塊,用于發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器;觸發(fā)模塊,用于觸發(fā)所述觸發(fā)消息對應(yīng)的行為事件。
5.根據(jù)權(quán)利要求4所述的安卓行為事件的觸發(fā)裝置,其特征在于:所述發(fā)送模塊包括端口單元,其用于分配安卓模擬器或安卓設(shè)備的通訊端口,建立安卓模擬器或安卓設(shè)備的通訊端口與電腦端口的連接;發(fā)送單元,發(fā)送預(yù)設(shè)的觸發(fā)消息至安卓設(shè)備或安卓模擬器。
6.根據(jù)權(quán)利要求4或5所述的安卓行為事件的觸發(fā)裝置,其特征在于:所述安卓設(shè)備包括安裝有安卓系統(tǒng)的手機(jī)或平板電腦。
【文檔編號】G06F11/36GK103927257SQ201310016768
【公開日】2014年7月16日 申請日期:2013年1月16日 優(yōu)先權(quán)日:2013年1月16日
【發(fā)明者】李敏怡, 林堅(jiān)明 申請人:珠海市君天電子科技有限公司, 北京金山安全軟件有限公司, 貝殼網(wǎng)際(北京)安全技術(shù)有限公司, 北京金山網(wǎng)絡(luò)科技有限公司