[發(fā)明專(zhuān)利]Java函數(shù)與C函數(shù)的綁定方法及裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201610184533.9 | 申請(qǐng)日: | 2016-03-28 |
| 公開(kāi)(公告)號(hào): | CN107239265B | 公開(kāi)(公告)日: | 2020-04-07 |
| 發(fā)明(設(shè)計(jì))人: | 朱德亮 | 申請(qǐng)(專(zhuān)利權(quán))人: | 阿里巴巴集團(tuán)控股有限公司 |
| 主分類(lèi)號(hào): | G06F9/448 | 分類(lèi)號(hào): | G06F9/448 |
| 代理公司: | 北京博思佳知識(shí)產(chǎn)權(quán)代理有限公司 11415 | 代理人: | 林祥 |
| 地址: | 英屬開(kāi)曼群島大開(kāi)*** | 國(guó)省代碼: | 暫無(wú)信息 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | java 函數(shù) 綁定 方法 裝置 | ||
1.一種Java函數(shù)與C函數(shù)的綁定方法,其特征在于,該方法包括:
將為目標(biāo)Java類(lèi)預(yù)定義的綁定接口基于引用傳遞至目標(biāo)C文件;其中,所述綁定接口包括所述目標(biāo)Java類(lèi)中目標(biāo)Java函數(shù)的描述信息;
在目標(biāo)C文件中調(diào)用所述綁定接口獲取所述目標(biāo)Java函數(shù)的描述信息;
基于所述描述信息建立所述目標(biāo)Java函數(shù)與所述目標(biāo)C文件中的C函數(shù)之間的綁定關(guān)系。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述描述信息建立所述目標(biāo)Java函數(shù)與所述目標(biāo)C文件中的C函數(shù)之間的綁定關(guān)系之前,所述方法還包括:
從目標(biāo)html頁(yè)面中獲取Javascript執(zhí)行代碼;
基于預(yù)設(shè)的語(yǔ)法解析器針對(duì)所述Javascript執(zhí)行代碼進(jìn)行語(yǔ)法解析;
在所述C文件中生成與所述Javascript執(zhí)行代碼對(duì)應(yīng)的C函數(shù)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法包括:
當(dāng)所述綁定關(guān)系建立完成后,在所述Javascript執(zhí)行代碼中調(diào)用所述目標(biāo)Java函數(shù),以將所述目標(biāo)html頁(yè)面轉(zhuǎn)換為native頁(yè)面在本地顯示。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將為目標(biāo)Java類(lèi)預(yù)定義的綁定接口基于引用傳遞至目標(biāo)C文件包括:
在目標(biāo)Java類(lèi)中調(diào)用預(yù)設(shè)的第一綁定函數(shù)將所述綁定接口的引用地址作為傳遞參數(shù)傳遞至所述目標(biāo)C文件中的第二綁定函數(shù)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述綁定接口包括預(yù)定義的接口函數(shù),所述目標(biāo)Java函數(shù)的描述信息基于Json格式添加在所述接口函數(shù)中;
所述在目標(biāo)C文件中調(diào)用所述綁定接口獲取所述目標(biāo)Java函數(shù)的描述信息包括:
在所述第二綁定函數(shù)中基于所述引用地址調(diào)用所述綁定接口;
解析所述綁定接口的接口函數(shù),以獲取所述接口函數(shù)中預(yù)添加的所述目標(biāo)Java函數(shù)的描述信息。
6.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述語(yǔ)法解析器為Duktape解析引擎。
7.一種Java函數(shù)與C函數(shù)的綁定裝置,其特征在于,該裝置包括:
傳遞模塊,用于將為目標(biāo)Java類(lèi)預(yù)定義的綁定接口基于引用傳遞至目標(biāo)C文件;其中,所述綁定接口包括所述目標(biāo)Java類(lèi)中目標(biāo)Java函數(shù)的描述信息;
第一獲取模塊,用于在目標(biāo)C文件中調(diào)用所述綁定接口獲取所述目標(biāo)Java函數(shù)的描述信息;
綁定模塊,用于基于所述描述信息建立所述目標(biāo)Java函數(shù)與所述目標(biāo)C文件中的C函數(shù)之間的綁定關(guān)系。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括:
第二獲取模塊,用于從目標(biāo)html頁(yè)面中獲取Javascript執(zhí)行代碼;
解析模塊,用于基于預(yù)設(shè)的語(yǔ)法解析器針對(duì)所述Javascript執(zhí)行代碼進(jìn)行語(yǔ)法解析;
生成模塊,用于在所述C文件中生成與所述Javascript執(zhí)行代碼對(duì)應(yīng)的C函數(shù)。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括:
調(diào)用模塊,用于在所述綁定關(guān)系建立完成后,在所述Javascript執(zhí)行代碼中調(diào)用所述目標(biāo)Java函數(shù),以將所述目標(biāo)html頁(yè)面轉(zhuǎn)換為native頁(yè)面在本地顯示。
10.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述傳遞模塊具體用于:
在目標(biāo)Java類(lèi)中調(diào)用預(yù)設(shè)的第一綁定函數(shù)將所述綁定接口的引用地址作為傳遞參數(shù)傳遞至所述目標(biāo)C文件中的第二綁定函數(shù)。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于阿里巴巴集團(tuán)控股有限公司,未經(jīng)阿里巴巴集團(tuán)控股有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610184533.9/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 基于支持類(lèi)的標(biāo)識(shí)來(lái)下載Java應(yīng)用的方法、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品
- 啟動(dòng)JAVA應(yīng)用的方法及裝置
- Java虛擬機(jī)的管理方法、監(jiān)控系統(tǒng)和監(jiān)控代理模塊
- 一種運(yùn)行Java程序的方法和裝置
- 一種保護(hù)java程序的方法
- Java卡的Java代碼補(bǔ)丁方法
- 一種基于中間件架構(gòu)下java棧的多線(xiàn)程實(shí)現(xiàn)方法
- 一種支持JAVA卡補(bǔ)丁函數(shù)的智能卡
- 一種改進(jìn)的Java卡初始化方法和Java卡
- JavaEE平臺(tái)構(gòu)建方法、JavaEE平臺(tái)及云端系統(tǒng)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線(xiàn)程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





