[發明專利]免安裝文件生成方法、裝置及電子設備有效
| 申請號: | 202010085302.9 | 申請日: | 2020-02-10 |
| 公開(公告)號: | CN111338633B | 公開(公告)日: | 2023-08-15 |
| 發明(設計)人: | 黃哲東 | 申請(專利權)人: | OPPO(重慶)智能科技有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F8/71;G06F9/445 |
| 代理公司: | 深圳市智圈知識產權代理事務所(普通合伙) 44351 | 代理人: | 苗燕 |
| 地址: | 401120 重慶*** | 國省代碼: | 重慶;50 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 安裝 文件 生成 方法 裝置 電子設備 | ||
1.一種免安裝文件生成方法,其特征在于,包括:
獲取目標應用的業務邏輯源碼;
將所述業務邏輯源碼轉換為目標代碼,所述目標代碼包括二進制業務邏輯代碼,所述二進制業務邏輯代碼包括第一調用指令,所述第一調用指令用于調用第一平臺的第一功能接口,所述第一功能接口為所述第一平臺提供的執行目標操作的接口;
設置封裝有第二調用指令的第一功能接口,所述第二調用指令用于調用第二平臺的第二功能接口,所述第二功能接口為所述第二平臺提供的執行所述目標操作的接口;
根據所述目標代碼和所述封裝有第二調用指令的第一功能接口,生成所述目標應用的免安裝文件,所述免安裝文件用于在所述第二平臺中免安裝啟動所述目標應用。
2.根據權利要求1所述的方法,其特征在于,所述第一調用指令包括第一功能接口的名稱;在所述根據所述目標代碼和所述封裝有第二調用指令的第一功能接口,生成所述目標應用的免安裝文件之前,所述方法還包括:
獲取所述封裝有第二調用指令的第一功能接口的代碼地址;
將所述第一調用指令中的所述名稱與所述代碼地址關聯。
3.根據權利要求1或2所述的方法,其特征在于,所述目標代碼還包括膠水代碼,所述膠水代碼用于加載二進制業務邏輯代碼,所述免安裝文件包括入口文件;所述方法還包括:
在所述入口文件中設置加載指令,用于依次加載所述封裝有第二調用指令的第一功能接口和所述膠水代碼。
4.根據權利要求3所述的方法,其特征在于,在所述根據所述目標代碼和所述封裝有第二調用指令的第一功能接口,生成所述目標應用的免安裝文件之后,所述方法還包括:
將所述目標應用的應用標識與所述目標應用的免安裝文件關聯。
5.根據權利要求4所述的方法,其特征在于,在所述將所述目標應用的應用標識與所述目標應用的免安裝文件關聯之后,所述方法還包括:
接收應用啟動請求,所述應用啟動請求包括所述目標應用的應用標識;
根據所述應用啟動請求中的應用標識,查找與所述應用標識關聯的所述免安裝文件;
在所述第二平臺中運行所述免安裝文件。
6.根據權利要求5所述的方法,其特征在于,所述在所述第二平臺運行所述免安裝文件,包括:
依次加載所述封裝有第二調用指令的第一功能接口和所述膠水代碼;
調用所述第二平臺的編譯接口,對所述封裝有第二調用指令的第一功能接口的代碼以及所述二進制業務邏輯代碼進行編譯,得到編譯后的可執行文件;
在所述第二平臺中運行所述可執行文件,以在所述第二平臺中啟動所述目標應用。
7.根據權利要求6所述的方法,其特征在于,所述在所述第二平臺中運行所述可執行文件,包括:
針對所述可執行文件中與所述第一調用指令對應的可執行代碼,當運行至所述可執行代碼時,根據所述可執行代碼確定所述第一調用指令中的所述第一功能接口的名稱;
根據確定的所述第一功能接口的名稱,查找與所述名稱關聯的代碼地址;
根據與所述名稱關聯的代碼地址,獲取所述封裝有第二調用指令的第一功能接口的代碼,根據獲取的代碼執行所述第二調用指令,執行所述目標操作。
8.根據權利要求1或2所述的方法,其特征在于,所述目標應用為基于Unity游戲引擎開發的游戲應用,所述將所述業務邏輯源碼轉換為目標代碼,包括:
調用所述Unity游戲引擎的轉換工具,將所述業務邏輯源碼轉換為C++代碼;
獲取低級虛擬機LLVM根據所述C++代碼輸出的二進制業務邏輯代碼和膠水代碼,作為所述目標代碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于OPPO(重慶)智能科技有限公司,未經OPPO(重慶)智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010085302.9/1.html,轉載請聲明來源鉆瓜專利網。





