[發(fā)明專利]API兼容性掃描方法和API兼容性掃描裝置有效
| 申請?zhí)枺?/td> | 201310404766.1 | 申請日: | 2013-09-09 |
| 公開(公告)號: | CN103440337A | 公開(公告)日: | 2013-12-11 |
| 發(fā)明(設計)人: | 周建龍 | 申請(專利權)人: | 百度在線網絡技術(北京)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F9/445 |
| 代理公司: | 北京銘碩知識產權代理有限公司 11286 | 代理人: | 張川緒;王兆賡 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | api 兼容性 掃描 方法 裝置 | ||
1.一種用于應用程序的API兼容性掃描方法,包括:
獲取操作系統(tǒng)的API的版本兼容性規(guī)則,并建立包括API的引入版本信息和廢棄版本信息的系統(tǒng)API兼容性規(guī)則庫;
針對將被檢查API兼容性的應用程序,獲取應用程序的代碼語法樹;
解析代碼語法樹以獲取應用程序所使用的API;
基于API兼容性規(guī)則庫中與獲取的API對應的廢棄版本信息來確定應用程序的API的兼容性隱患。
2.如權利要求1所述的API兼容性掃描方法,其中,如果在應用程序的代碼語法樹中存在版本判斷代碼,則不執(zhí)行確定API的兼容性隱患的步驟。
3.如權利要求1所述的API兼容性掃描方法,其中,自動從操作系統(tǒng)的官方網站獲取最新的API的版本兼容性規(guī)則,或者手動設置API的版本兼容性規(guī)則。
4.如權利要求1所述的API兼容性掃描方法,還包括:在解析代碼語法樹之前對代碼語法樹進行遍歷以得到精簡的代碼語法樹。
5.如權利要求1所述的API兼容性掃描方法,還包括:基于API兼容性規(guī)則庫中與獲取的API對應的引入版本信息和應用程序的最低支持版本來確定應用程序的API的兼容性隱患。
6.如權利要求1-5中的任意一個所述的API兼容性掃描方法,還包括:基于確定的API的兼容性隱患生成兼容性隱患報告,兼容性隱患報告包括關于存在兼容性隱患的API被調用的次數以及在代碼中的位置的信息。
7.一種用于掃描應用程序的API兼容性的API兼容性掃描裝置,包括:
API兼容性規(guī)則庫單元,獲取操作系統(tǒng)的API的版本兼容性規(guī)則,并建立包括API的引入版本信息和廢棄版本信息的系統(tǒng)API兼容性規(guī)則庫;
代碼語法樹獲取單元,用于針對將被檢查API兼容性的應用程序,獲取應用程序的代碼語法樹;
API抓取單元,用于解析代碼語法樹以獲取應用程序所使用的API;
API兼容性確定單元,用于基于API兼容性規(guī)則庫中與獲取的API對應的廢棄版本信息來確定應用程序的API的兼容性隱患。
8.如權利要求7所述的API兼容性掃描裝置,其中,如果API兼容性確定單元確定在應用程序的代碼語法樹中存在版本判斷代碼,則不執(zhí)行確定API的兼容性隱患的操作。
9.如權利要求7所述的API兼容性掃描裝置,其中,API兼容性規(guī)則庫單元自動從操作系統(tǒng)的官方網站獲取最新的API的版本兼容性規(guī)則,或者根據用戶的設置來手動地設置API的版本兼容性規(guī)則。
10.如權利要求7所述的API兼容性掃描裝置,還包括:代碼語法樹遍歷單元,用于在API抓取單元解析代碼語法樹之前對代碼語法樹進行遍歷以得到精簡的代碼語法樹。
11.如權利要求7所述的API兼容性掃描裝置,API兼容性確定單元還基于API兼容性規(guī)則庫中與獲取的API對應的引入版本信息和應用程序的最低支持版本來確定應用程序的API的兼容性隱患。
12.如權利要求7-11中的任意一個所述的API兼容性掃描裝置,還包括:兼容性報告生成單元,基于確定的API的兼容性隱患生成兼容性隱患報告,兼容性隱患報告包括關于存在兼容性隱患的API被調用的次數以及在代碼中的位置的信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于百度在線網絡技術(北京)有限公司,未經百度在線網絡技術(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310404766.1/1.html,轉載請聲明來源鉆瓜專利網。





