[發明專利]一種消息截獲方法、裝置、電子設備及存儲介質有效
| 申請號: | 201910872646.1 | 申請日: | 2019-09-16 |
| 公開(公告)號: | CN110597647B | 公開(公告)日: | 2021-05-28 |
| 發明(設計)人: | 薛勇;呂慶春;彭飛 | 申請(專利權)人: | 五八有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 北京弘權知識產權代理有限公司 11363 | 代理人: | 逯長明;許偉群 |
| 地址: | 300450 天津市濱海新區經濟技術開*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 消息 截獲 方法 裝置 電子設備 存儲 介質 | ||
本發明實施例提供了一種消息截獲方法、裝置、電子設備及存儲介質,其中,所述方法包括:命名響應鏈中各層級頁面所對應的消息接口,得到所述消息接口的自定義名稱;確定目標頁面;結合所述目標頁面及各消息接口的自定義名稱,確定目標消息接口;將所述目標消息接口對應的接口代碼替換為截獲代碼;利用所述截獲代碼,截獲當前傳遞的消息。可見,本申請所提供的消息傳遞方法,能夠在指定層級的頁面中準確截獲所需要的消息,同時,不影響消息的正常傳遞。
技術領域
本申請涉及App開發技術領域,尤其涉及一種消息截獲方法、裝置、電子設備及存儲介質。
背景技術
App(Application,應用軟件)的開發依賴于內部的消息傳遞機制,App通常包含多個層級的頁面,每個層級的頁面均對應響應不同的消息,消息在各個層級的頁面之間傳遞。開發人員在開發的過程中,經常需要在某一目標層級的頁面上截獲消息,這種截獲消息的操作就需要依賴于消息傳遞機制。
通常的消息傳遞機制分為代理、block回調和通知三類。具體地,當采用代理或者block回調方式傳遞消息時,消息會從層級最低的頁面依次至層級最高的頁面進行響應,其中,較高層級的頁面會引用較低層級的頁面的部分代碼來完成響應。當采用通知方式傳遞消息時,消息以及消息在各個頁面的響應結果均會以廣播的形式被傳遞至全部頁面,因此,各個頁面均會持有全部消息及其在各個頁面的響應結果。
通過各個消息傳遞機制的工作原理可知,當采用代理或者block回調方式傳遞消息時,較高層級的頁面與較低層級的頁面之間會存在嚴重的代碼耦合,如果想要在某一層級的頁面上截獲消息,則需要從最低級頁面依次引用代碼至該層級頁面。但是,所截獲的消息容易受各個層級頁面之間代碼耦合的影響,準確率較低。而采用通知方式傳遞消息雖然能夠解決各個層級頁面之間代碼耦合的問題,但是,由于各個層級所接收到的廣播消息過多,也會導致所截獲的消息準確率較低的問題。
發明內容
本申請提供了一種消息截獲方法、裝置、電子設備及存儲介質,以解決利用現有消息傳遞機制在某一層級的頁面所截獲信息的準確率較低的問題。
第一方面,本發明實施例提供了一種消息截獲方法,所述方法包括:
命名響應鏈中各層級頁面所對應的消息接口,得到所述消息接口的自定義名稱;
確定目標頁面,所述目標頁面為預設發生截獲消息動作的頁面;
結合所述目標頁面及各消息接口的自定義名稱,確定目標消息接口;
將所述目標消息接口對應的接口代碼替換為截獲代碼,所述截獲代碼用于截獲當前傳遞的消息,且傳遞所述消息至所述目標頁面的下一級頁面;
利用所述截獲代碼,截獲當前傳遞的消息。
在本發明實施例第一方面一種可能的實現方式中,所述命名響應鏈中各層級頁面所對應的消息接口,得到消息接口的自定義名稱包括:
獲取所述頁面對應的消息接口;
預命名所述消息接口,得到所述消息接口的待用名稱,所述待用名稱為至少包含所對應頁面的層級信息的名稱;
替換重復名稱為可用名稱,得到各個消息接口的自定義名稱,所述重復名稱為多于一個消息接口所使用的相同的待用名稱,所述可用名稱為與各所述待用名稱不同的名稱。
在本發明實施例第一方面一種可能的實現方式中,所述確定目標頁面包括:
獲取預設截獲指令中的頁面層級信息;
按照所述頁面層級信息,確定預選頁面,所述預選頁面為所述頁面層級信息所對應的全部頁面;
從全部所述預選頁面中確定目標頁面,所述目標頁面為觸點所在的預選頁面,所述觸點為頁面接受碰觸的受力點。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于五八有限公司,未經五八有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910872646.1/2.html,轉載請聲明來源鉆瓜專利網。





