[發(fā)明專利]通信方法、裝置、電子設(shè)備及存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 202110634232.2 | 申請日: | 2021-06-08 |
| 公開(公告)號: | CN113076209B | 公開(公告)日: | 2021-08-17 |
| 發(fā)明(設(shè)計)人: | 肖鵬;李翔宇;莫文龍 | 申請(專利權(quán))人: | 貝殼技術(shù)有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54;G06F9/448;G06F9/451;G06F16/958 |
| 代理公司: | 北京思源智匯知識產(chǎn)權(quán)代理有限公司 11657 | 代理人: | 毛麗琴 |
| 地址: | 300457 天津市濱海新區(qū)經(jīng)濟(jì)技術(shù)開發(fā)*** | 國省代碼: | 天津;12 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 通信 方法 裝置 電子設(shè)備 存儲 介質(zhì) | ||
本公開實施例公開了一種通信方法、裝置、電子設(shè)備及存儲介質(zhì),其中,方法包括:函數(shù)調(diào)用方在確定待調(diào)用函數(shù)為對端的函數(shù)時,獲取待調(diào)用函數(shù)的第一函數(shù)信息,所述第一函數(shù)信息包括所述待調(diào)用函數(shù)的函數(shù)名、函數(shù)參數(shù)和回調(diào)函數(shù);對第一函數(shù)信息進(jìn)行處理得到第二函數(shù)信息,并且將所述第二函數(shù)信息通過網(wǎng)頁橋接層傳遞給所述對端,基于第二函數(shù)信息獲取函數(shù)執(zhí)行結(jié)果,并且通過所述網(wǎng)頁橋接層將所述函數(shù)執(zhí)行結(jié)果和所述回調(diào)標(biāo)識信息返回給所述函數(shù)調(diào)用方,所述函數(shù)調(diào)用方基于所述函數(shù)執(zhí)行結(jié)果和所述回調(diào)標(biāo)識信息執(zhí)行所述回調(diào)函數(shù),得到待調(diào)用函數(shù)的執(zhí)行結(jié)果。本公開實施例可以實現(xiàn)應(yīng)用程序客戶端中Flutter網(wǎng)頁端和原生端之間的通信。
技術(shù)領(lǐng)域
本公開涉及計算機(jī)技術(shù)領(lǐng)域,尤其涉及一種通信方法、裝置、電子設(shè)備及存儲介質(zhì)。
背景技術(shù)
Flutter框架是谷歌(Google)公司推出的全新跨平臺移動用戶界面框架,可以在安卓(Android)系統(tǒng)和iOS(蘋果公司開發(fā)的移動操作系統(tǒng))中運(yùn)行Flutter框架的用戶界面代碼,節(jié)省應(yīng)用開發(fā)成本。
相關(guān)技術(shù)中,在已上線的Android或iOS的應(yīng)用程序內(nèi)引入了Flutter技術(shù)實現(xiàn)的Flutter網(wǎng)頁,但是由于原有的Flutter框架編譯成Flutter網(wǎng)頁后,F(xiàn)lutter框架層和Flutter渲染引擎層之間的通道被切斷,由此面臨著Flutter 網(wǎng)頁運(yùn)行在客戶端瀏覽器中時,原生端和Flutter 網(wǎng)頁端之間無法進(jìn)行通信,進(jìn)而可能導(dǎo)致應(yīng)用程序客戶端中的頁面無法正常顯示或者功能缺失的問題。
針對上述業(yè)務(wù)場景,相關(guān)技術(shù)并沒有為Flutter網(wǎng)頁端和原生端之間的通信提供一種解決方案,導(dǎo)致Flutter網(wǎng)頁存在應(yīng)用局限性,降低了Flutter網(wǎng)頁的用戶使用體驗。
發(fā)明內(nèi)容
本公開實施例所要解決的一個技術(shù)問題是:提供一種通信方法、裝置、電子設(shè)備及存儲介質(zhì)。
根據(jù)本公開實施例的一個方面,提供一種通信方法,應(yīng)用于應(yīng)用程序客戶端中,所述應(yīng)用程序客戶端包括Flutter網(wǎng)頁端和原生端,所述方法包括:
函數(shù)調(diào)用方在確定待調(diào)用函數(shù)為對端的函數(shù)時,獲取所述待調(diào)用函數(shù)的第一函數(shù)信息,所述第一函數(shù)信息包括所述待調(diào)用函數(shù)的函數(shù)名、函數(shù)參數(shù)和回調(diào)函數(shù);
所述函數(shù)調(diào)用方對所述第一函數(shù)信息進(jìn)行處理得到第二函數(shù)信息,并且將所述第二函數(shù)信息通過網(wǎng)頁橋接層傳遞給所述對端,所述網(wǎng)頁橋接層運(yùn)用了JS橋接層的工作機(jī)制;
所述對端基于所述第二函數(shù)信息獲取函數(shù)執(zhí)行結(jié)果,并且通過所述網(wǎng)頁橋接層將所述函數(shù)執(zhí)行結(jié)果和回調(diào)標(biāo)識信息返回給所述函數(shù)調(diào)用方;
所述函數(shù)調(diào)用方基于所述函數(shù)執(zhí)行結(jié)果和所述回調(diào)標(biāo)識信息執(zhí)行所述回調(diào)函數(shù),得到所述待調(diào)用函數(shù)的執(zhí)行結(jié)果;
其中,所述函數(shù)調(diào)用方為所述Flutter網(wǎng)頁端時,所述對端為所述原生端;所述函數(shù)調(diào)用方為所述原生端時,所述對端為所述Flutter網(wǎng)頁端。
在本公開的一個實施例中,所述第二函數(shù)信息包括編碼參數(shù)、所述回調(diào)標(biāo)識信息和函數(shù)名;
所述函數(shù)調(diào)用方對所述第一函數(shù)信息進(jìn)行處理得到第二函數(shù)信息,包括:
所述函數(shù)調(diào)用方的業(yè)務(wù)層向所述函數(shù)調(diào)用方的通道層發(fā)送所述第一函數(shù)信息;
所述函數(shù)調(diào)用方的通道層對所述函數(shù)參數(shù)進(jìn)行編碼處理,得到編碼參數(shù);
所述函數(shù)調(diào)用方的通道層生成用于標(biāo)識所述回調(diào)函數(shù)的回調(diào)標(biāo)識信息。
在本公開的又一實施例中,在所述函數(shù)調(diào)用方為所述Flutter網(wǎng)頁端時,所述函數(shù)調(diào)用方的通道層使用JavaScript代碼編譯而成;
在所述函數(shù)調(diào)用方為所述原生端時,所述函數(shù)調(diào)用方的通道層使用原生代碼編譯而成。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于貝殼技術(shù)有限公司,未經(jīng)貝殼技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110634232.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 通信裝置、通信系統(tǒng)、通信方法、通信程序、通信電路
- 通信設(shè)備、通信系統(tǒng)、通信方法、通信程序、通信電路
- 通信設(shè)備、通信系統(tǒng)、通信方法、通信程序、通信電路
- 通信設(shè)備、通信系統(tǒng)、通信方法、通信程序、通信電路
- 通信設(shè)備、通信方法、通信電路、通信系統(tǒng)
- 通信設(shè)備、通信系統(tǒng)、通信方法、通信程序、通信電路
- 通信終端、通信系統(tǒng)、通信方法以及通信程序
- 通信終端、通信方法、通信裝備和通信系統(tǒng)
- 通信裝置、通信程序、通信方法以及通信系統(tǒng)
- 通信裝置、通信系統(tǒng)、通信方法及計算機(jī)可讀取的記錄介質(zhì)





