專(zhuān)利名稱(chēng):一種統(tǒng)計(jì)輸入行為的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及圖形用 戶界面技術(shù)領(lǐng)域,尤其涉及一種統(tǒng)計(jì)輸入行為的方法及裝置。
背景技術(shù):
業(yè)務(wù)發(fā)布方常常需要了解用戶對(duì)發(fā)布的業(yè)務(wù)的關(guān)注程度,若了解到用戶非常關(guān) 注,則繼續(xù)優(yōu)化所發(fā)布的業(yè)務(wù),若了解到用戶對(duì)發(fā)布的業(yè)務(wù)關(guān)注度不高,則決定是否繼續(xù)推 行所發(fā)布的業(yè)務(wù)。為此,需要對(duì)用戶在圖形用戶界面(⑶I,Graphical User Interface)上的輸入行 為進(jìn)行統(tǒng)計(jì)。統(tǒng)計(jì)輸入行為的現(xiàn)有實(shí)現(xiàn)方法包括在有關(guān)用戶界面的代碼中嵌入特定代碼,嵌 入的特定代碼專(zhuān)門(mén)用于在客戶端統(tǒng)計(jì)用戶對(duì)該用戶界面的輸入行為。以即時(shí)通訊(IM)軟 件為例,即時(shí)通訊軟件中“發(fā)送”按鈕界面的代碼中嵌入了統(tǒng)計(jì)用戶輸入行為的特定代碼, 當(dāng)用戶點(diǎn)擊“發(fā)送”按鈕時(shí),即時(shí)通訊軟件在執(zhí)行“發(fā)送”操作前,嵌入的特定代碼對(duì)“發(fā)送” 按鈕被點(diǎn)擊的輸入行為進(jìn)行統(tǒng)計(jì)。發(fā)明人在研究過(guò)程中,發(fā)現(xiàn)上述現(xiàn)有實(shí)現(xiàn)方法實(shí)現(xiàn)復(fù)雜,若需要新增界面功能,總 是需要在新增的界面代碼中嵌入用于統(tǒng)計(jì)輸入行為的代碼。
發(fā)明內(nèi)容
本申請(qǐng)實(shí)施例的目的是提供一種統(tǒng)計(jì)輸入行為的方法及裝置,無(wú)需在新增的界面 代碼中嵌入用于統(tǒng)計(jì)輸入行為的代碼。—種統(tǒng)計(jì)輸入行為的方法,所述方法包括客戶端獲取輸入行為列表,所述輸入行為列表的每條信息包括用戶界面元素、所 述用戶界面元素的標(biāo)識(shí)、所述用戶界面元素對(duì)應(yīng)的事件,以及所述事件對(duì)應(yīng)的統(tǒng)計(jì)行為;所述客戶端判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì) 應(yīng)的事件是否分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的 事件匹配;若均匹配,則所述客戶端根據(jù)所述輸入行為列表中匹配上的事件所對(duì)應(yīng)的統(tǒng)計(jì)行 為執(zhí)行統(tǒng)計(jì)操作??蛇x地,在所述客戶端進(jìn)行所述判斷之前,在所述客戶端進(jìn)行所述獲取之后,所述 方法還包括所述客戶端建立第二窗口過(guò)程函數(shù),所述第二窗口過(guò)程函數(shù)用于訪問(wèn)所述輸入行 為列表,并截獲第一窗口過(guò)程函數(shù)產(chǎn)生的用戶界面消息,所述第一窗口過(guò)程函數(shù)是應(yīng)用程 序的窗口過(guò)程函數(shù);當(dāng)所述第二窗口過(guò)程函數(shù)截獲到用戶界面消息時(shí),所述第二窗口過(guò)程函數(shù)訪問(wèn)所 述輸入行為列表,以使所述客戶端進(jìn)行所述判斷。優(yōu)選地,所述客戶端獲取輸入行為列表包括
所述客戶端從服務(wù)器獲取所述輸入行為列表;或者,所述客戶端獲取自身配置的所述輸入行為列表。優(yōu)選地,若所述客戶端從服務(wù)器獲取所述輸入行為列表,所述服務(wù)器根據(jù)業(yè)務(wù)發(fā) 布方的要求對(duì)所述輸入行為列表進(jìn)行更新;或者,若所述客戶端獲取自身配置的所述輸入行為列表,所述客戶端在應(yīng)用程序 升級(jí)時(shí)對(duì)所述輸入行為列表進(jìn)行更新。優(yōu)選地,若所述用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)與所述輸入行為列表 中的用戶界面元素的標(biāo)識(shí)不匹配,和/或,所述用戶界面消息中攜帶的用戶界面元素對(duì)應(yīng) 的事件與所述輸入行為列表中的用戶界面元素對(duì)應(yīng)的事件不匹配,則所述客戶端按照正常 方式繼續(xù)處理所述用戶界面消息。可選地,在所述執(zhí)行統(tǒng)計(jì)操作之后,所述方法還包括 所述客戶端將所述用戶界面消息攜帶的信息記錄至日志文件。可選地,所述方法還包括所述客戶端向服務(wù)器上傳所述日志文件。一種統(tǒng)計(jì)輸入行為的裝置,所述裝置運(yùn)行于客戶端中,所述裝置包括獲取單元,用于獲取輸入行為列表,所述輸入行為列表的每條信息包括用戶界面 元素、所述用戶界面元素的標(biāo)識(shí)、所述用戶界面元素對(duì)應(yīng)的事件,以及所述事件對(duì)應(yīng)的統(tǒng)計(jì) 行為;判斷單元,用于判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素 對(duì)應(yīng)的事件是否分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng) 的事件匹配;執(zhí)行單元,用于若所述判斷單元判斷出均匹配,則所述客戶端根據(jù)所述輸入行為 列表中匹配上的事件所對(duì)應(yīng)的統(tǒng)計(jì)行為執(zhí)行統(tǒng)計(jì)操作??蛇x地,所述裝置還包括建立單元,用于在所述判斷單元執(zhí)行操作之前,建立第二窗口過(guò)程函數(shù),所述第二 窗口過(guò)程函數(shù)用于訪問(wèn)所述輸入行為列表,并截獲第一窗口過(guò)程函數(shù)產(chǎn)生的用戶界面消 息,所述第一窗口過(guò)程函數(shù)是應(yīng)用程序的窗口過(guò)程函數(shù);當(dāng)所述第二窗口過(guò)程函數(shù)截獲到用戶界面消息時(shí),所述第二窗口過(guò)程函數(shù)訪問(wèn)所 述輸入行為列表,以使所述客戶端進(jìn)行所述判斷??蛇x地,所述裝置還包括更新單元,用于應(yīng)用程序升級(jí)時(shí)對(duì)所述輸入行為列表進(jìn)行更新??蛇x地,所述裝置還包括正常操作單元,用于當(dāng)所述判斷單元判斷出至少一個(gè)不匹配時(shí),按照正常方式繼 續(xù)處理所述用戶界面消息??蛇x地,所述裝置還包括記錄單元,用于在所述執(zhí)行單元執(zhí)行操作之后,將所述用戶界面消息攜帶的信息 記錄至日志文件??蛇x地,所述裝置還包括
上傳 單元,用于向服務(wù)器上傳所述日志文件??梢钥闯觯诒旧暾?qǐng)實(shí)施例中,客戶端獲取一個(gè)輸入行為列表,當(dāng)有用戶界面消息 產(chǎn)生時(shí),判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件是否 分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件匹配,若均 匹配,則根據(jù)統(tǒng)計(jì)行為執(zhí)行統(tǒng)計(jì)操作。因此,本申請(qǐng)實(shí)施例提供的方法無(wú)需在任何用戶界面 的代碼中嵌入特定代碼。當(dāng)業(yè)務(wù)發(fā)布后,若需要統(tǒng)計(jì)某個(gè)輸入行為,無(wú)需重新編譯客戶端代碼,有利于業(yè)務(wù) 的發(fā)布與升級(jí)。
為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本 申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提 下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本申請(qǐng)實(shí)施例一方法流程圖;圖2為本申請(qǐng)實(shí)施例二方法流程圖;圖3為本申請(qǐng)實(shí)施例三提供的一種裝置結(jié)構(gòu)示意圖;圖4為本申請(qǐng)實(shí)施例四提供的一種裝置結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本技術(shù)領(lǐng)域的人員更好地理解本申請(qǐng)中的技術(shù)方案,下面將結(jié)合本申請(qǐng)實(shí) 施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施 例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒局姓?qǐng)中的實(shí)施例,本領(lǐng)域普通 技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù) 的范圍。在本申請(qǐng)實(shí)施例中,輸入行為指的是用戶通過(guò)鼠標(biāo)、鍵盤(pán)或者觸摸屏點(diǎn)擊GUI上 顯示的業(yè)務(wù)的控件。請(qǐng)參考圖1,為本申請(qǐng)實(shí)施例一方法流程圖,可以包括以下步驟步驟101 客戶端獲取輸入行為列表,所述輸入行為列表的每條信息包括用戶界 面元素、所述用戶界面元素的標(biāo)識(shí)、所述用戶界面元素對(duì)應(yīng)的事件,以及所述事件對(duì)應(yīng)的統(tǒng) 計(jì)行為;步驟102 所述客戶端判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界 面元素對(duì)應(yīng)的事件是否分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元 素對(duì)應(yīng)的事件匹配;在本文中,用戶界面消息指的是用戶通過(guò)使用鍵盤(pán)、鼠標(biāo)或觸摸屏產(chǎn)生的消息,例 如單擊鼠標(biāo)左鍵產(chǎn)生的消息,按下鍵盤(pán)上某個(gè)按鍵產(chǎn)生的消息。步驟103 若均匹配,則所述客戶端根據(jù)所述輸入行為列表中匹配上的事件所對(duì) 應(yīng)的統(tǒng)計(jì)行為執(zhí)行統(tǒng)計(jì)操作。可以看出,在本申請(qǐng)實(shí)施例中,客戶端獲取一個(gè)輸入行為列表,當(dāng)有用戶界面消息產(chǎn)生時(shí),判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件是否 分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件匹配,若均 匹配,則根據(jù)統(tǒng)計(jì)行為執(zhí)行統(tǒng)計(jì)操作。因此,本申請(qǐng)實(shí)施例提供的方法無(wú)需在任何用戶界面 的代碼中嵌入特定代碼。下面以一個(gè)更加具體的實(shí)施例對(duì)本申請(qǐng)進(jìn)行說(shuō)明。在該實(shí)施例中,僅以即時(shí)通訊 軟件為例進(jìn)行說(shuō)明。請(qǐng)參考圖2,為本申請(qǐng)實(shí)施例二方法流程圖,可以包括以下步驟步驟201 客戶端啟動(dòng)即時(shí)通訊軟件后,獲取輸入行為列表;獲取輸入行為列表可以包括以下兩種方式第一種方式從服務(wù)器獲取輸入行為列表。第二種方式客戶端獲取自身配置的輸入行為列表。輸入行為列表中的每條信息包括用戶界面元素、用戶界面元素的標(biāo)識(shí)(ID)、用 戶界面元素對(duì)應(yīng)的事件以及該事件對(duì)應(yīng)的統(tǒng)計(jì)行為。其中,用戶界面元素是指在即時(shí)通訊 軟件的圖形用戶界面上出現(xiàn)的各個(gè)控件的用戶界面,例如在聊天模式下的“發(fā)送”按鈕。用 戶界面元素的ID是指在即時(shí)通訊軟件內(nèi)部,這個(gè)用戶界面元素存在一個(gè)ID,例如ID_BTN_ SENDMSG。用戶界面元素對(duì)應(yīng)的事件是指用戶是通過(guò)何種方式進(jìn)行操作的,例如鼠標(biāo)或者 鍵盤(pán)。事件對(duì)應(yīng)的統(tǒng)計(jì)行為是指當(dāng)事件發(fā)生后,需要進(jìn)行統(tǒng)計(jì)的輸入行為,例如記錄鼠標(biāo) 點(diǎn)擊的位置,或者,記錄被用戶按下的按鍵。對(duì)于輸入行為列表,可以參考以下實(shí)例
權(quán)利要求
1.一種統(tǒng)計(jì)輸入行為的方法,其特征在于,所述方法包括客戶端獲取輸入行為列表,所述輸入行為列表的每條信息包括用戶界面元素、所述用 戶界面元素的標(biāo)識(shí)、所述用戶界面元素對(duì)應(yīng)的事件,以及所述事件對(duì)應(yīng)的統(tǒng)計(jì)行為;所述客戶端判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的 事件是否分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件 匹配;若均匹配,則所述客戶端根據(jù)所述輸入行為列表中匹配上的事件所對(duì)應(yīng)的統(tǒng)計(jì)行為執(zhí) 行統(tǒng)計(jì)操作。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述客戶端進(jìn)行所述判斷之前,在所述 客戶端進(jìn)行所述獲取之后,所述方法還包括所述客戶端建立第二窗口過(guò)程函數(shù),所述第二窗口過(guò)程函數(shù)用于訪問(wèn)所述輸入行為列 表,并截獲第一窗口過(guò)程函數(shù)產(chǎn)生的用戶界面消息,所述第一窗口過(guò)程函數(shù)是應(yīng)用程序的 窗口過(guò)程函數(shù);當(dāng)所述第二窗口過(guò)程函數(shù)截獲到用戶界面消息時(shí),所述第二窗口過(guò)程函數(shù)訪問(wèn)所述輸 入行為列表,以使所述客戶端進(jìn)行所述判斷。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述客戶端獲取輸入行為列表包括 所述客戶端從服務(wù)器獲取所述輸入行為列表;或者,所述客戶端獲取自身配置的所述輸入行為列表。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,若所述客戶端從服務(wù)器獲取所述輸入行 為列表,所述服務(wù)器根據(jù)業(yè)務(wù)發(fā)布方的要求對(duì)所述輸入行為列表進(jìn)行更新;或者,若所述客戶端獲取自身配置的所述輸入行為列表,所述客戶端在應(yīng)用程序升級(jí) 時(shí)對(duì)所述輸入行為列表進(jìn)行更新。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,若所述用戶界面消息中攜帶的用戶界面 元素的標(biāo)識(shí)與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)不匹配,和/或,所述用戶界面 消息中攜帶的用戶界面元素對(duì)應(yīng)的事件與所述輸入行為列表中的用戶界面元素對(duì)應(yīng)的事 件不匹配,則所述客戶端按照正常方式繼續(xù)處理所述用戶界面消息。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述執(zhí)行統(tǒng)計(jì)操作之后,所述方法還包括所述客戶端將所述用戶界面消息攜帶的信息記錄至日志文件。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述方法還包括 所述客戶端向服務(wù)器上傳所述日志文件。
8.一種統(tǒng)計(jì)輸入行為的裝置,其特征在于,所述裝置運(yùn)行于客戶端中,所述裝置包括 獲取單元,用于獲取輸入行為列表,所述輸入行為列表的每條信息包括用戶界面元素、所述用戶界面元素的標(biāo)識(shí)、所述用戶界面元素對(duì)應(yīng)的事件,以及所述事件對(duì)應(yīng)的統(tǒng)計(jì)行 為;判斷單元,用于判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng) 的事件是否分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事 件匹配;執(zhí)行單元,用于若所述判斷單元判斷出均匹配,則所述客戶端根據(jù)所述輸入行為列表 中匹配上的事件所對(duì)應(yīng)的統(tǒng)計(jì)行為執(zhí)行統(tǒng)計(jì)操作。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括建立單元,用于在所述判斷單元執(zhí)行操作之前,建立第二窗口過(guò)程函數(shù),所述第二窗口 過(guò)程函數(shù)用于訪問(wèn)所述輸入行為列表,并截獲第一窗口過(guò)程函數(shù)產(chǎn)生的用戶界面消息,所 述第一窗口過(guò)程函數(shù)是應(yīng)用程序的窗口過(guò)程函數(shù);當(dāng)所述第二窗口過(guò)程函數(shù)截獲到用戶界面消息時(shí),所述第二窗口過(guò)程函數(shù)訪問(wèn)所述輸 入行為列表,以使所述客戶端進(jìn)行所述判斷。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括更新單元,用于應(yīng)用程序升級(jí)時(shí)對(duì)所述輸入行為列表進(jìn)行更新。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括正常操作單元,用于當(dāng)所述判斷單元判斷出至少一個(gè)不匹配時(shí),按照正常方式繼續(xù)處 理所述用戶界面消息。
12.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括記錄單元,用于在所述執(zhí)行單元執(zhí)行操作之后,將所述用戶界面消息攜帶的信息記錄 至日志文件。
13.根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述裝置還包括上傳單元,用于向服務(wù)器上傳所述日志文件。
全文摘要
本申請(qǐng)公開(kāi)了一種統(tǒng)計(jì)輸入行為的方法及裝置。所述方法包括客戶端獲取輸入行為列表,所述輸入行為列表的每條信息包括用戶界面元素、所述用戶界面元素的標(biāo)識(shí)、所述用戶界面元素對(duì)應(yīng)的事件,以及所述事件對(duì)應(yīng)的統(tǒng)計(jì)行為;所述客戶端判斷用戶界面消息中攜帶的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件是否分別與所述輸入行為列表中的用戶界面元素的標(biāo)識(shí)和用戶界面元素對(duì)應(yīng)的事件匹配;若均匹配,則所述客戶端根據(jù)所述輸入行為列表中匹配上的事件所對(duì)應(yīng)的統(tǒng)計(jì)行為執(zhí)行統(tǒng)計(jì)操作。通過(guò)本申請(qǐng),無(wú)需在任何用戶界面的代碼中嵌入特定代碼。
文檔編號(hào)G06F11/34GK102043705SQ20091020419
公開(kāi)日2011年5月4日 申請(qǐng)日期2009年10月19日 優(yōu)先權(quán)日2009年10月19日
發(fā)明者張利明 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司