錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務,錦州廣廈維修電腦,公司IT外包服務
topFlag1 設為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務項目 服務報價 維修流程 IT外包服務 服務器維護 技術文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務技術文章
Vdex Extractor:從Vdex文件反編譯和提取Android Dex字節碼的工具

作者: 佚名  日期:2018-10-18 13:21:38   來源: 本站整理

 Vdex Extractor
一款命令行工具,用于從Vdex文件反編譯和提取Android Dex字節碼的工具。
編譯
克隆此存儲庫
如果要為Android設備進行交叉編譯,請安裝Android NDK
make.sh使用所需的構建目標調用bash腳本$ ./make.sh- 如果CC未從env定義,則默認使用gcc$ ./make.sh gcc – 用gcc編譯$ ./make.sh clang – 用clang編譯$ ./make.sh cross-android – 使用NDK交叉編譯(armeabi-v7a,arm64-v8a,x86和x86_64)可執行文件復制到bin目錄下,對于調試版本使用$ DEBUG=true ./make.sh
依賴關系
主機系統中應安裝以下外部庫:
zlib
macos:brew install zlib-devel帶macports的macOS: port install zlibLinux: apt install libz-dev其他Linux / Unix系統:檢查可用的包管理器或從源代碼編譯使用cygwin的Windows:zlib-devel從cygwin安裝程序安裝
用法
$ bin/vdexExtractor -h
              vdexExtractor ver. 0.5.2
    Anestis Bechtsoudis 
  Copyright 2017 - 2018 by CENSUS S.A. All Rights Reserved.
 -i, --input=   : 輸入目錄(遞歸搜索)或單個文件
 -o, --output=  : 輸出路徑(默認與輸入相同)
 -f, --file-override  : 如果文件已經存在允許覆蓋(默認:false)
 --no-unquicken       : 禁用unquicken字節碼反編譯器 (don't de-odex)
 --deps               : 轉儲經過驗證的依賴信息
 --dis                : 啟用字節碼反匯編器
 --ignore-crc-error   : 反編譯Dex 忽略CRC錯誤
 --new-crc=     : 提取Apk或Dex文件位置校驗和文本文件
 --get-api             : 基于Vdex版本獲取Android API級別 
 -v, --debug=LEVEL    : 日志級別 默認: '3' (INFO)
 -l, --log-file=: 保存反匯編器或驗證依賴項輸出到日志文件
 -h, --help           : 幫助信息
字節碼Unquickening解碼器
Vdex文件包含所有quick_info數據(舊vtable),用于恢復字節碼優化過程中應用的dexto -dex轉換。這里是創建一個能夠快速恢復優化字節碼的獨立工具,不需要從AOSP構建整個libart。Vdex完全unquicken功能也作為AOSP oatdump libart工具的一部分實現。可在此處獲得。如果你想在Oreo版本中使用oatdump,你可以在這里使用相應的補丁,或者在oatdump ++工具的fork和build(內部和AOSP_SRC_ROOT工作空間)中使用oreo-release分支。谷歌已經發布了提供的補丁以及ART運行時的Android Pie版本。
驗證迭代器的依賴關系
當第一次編譯(優化)Dex字節碼文件時,dex2oat將執行驗證依賴項收集器,作為方法學驗證者的一部分。驗證依賴項收集器類用于記錄解析結果和類路徑中定義的類/方法/字段的類型可賦值測試。編譯驅動程序初始化類并注冊正在編譯的所有Dex文件。在這個集合之外的Dex文件中定義的類(或者沒有關聯的Dex文件的合成類)被認為在類路徑中。所有記錄的依賴關系都存儲在生成的Vdex文件中,以及來自OatWriter類的相應Oat文件。vdexExtractor工具集成了一個Vdex依賴項walker函數,該函數能夠迭代所有依賴項信息并以人類可讀的格式轉儲它們。以下代碼段演示了示例Vdex文件的依賴項轉儲示例。
$ bin/vdexExtractor -i /tmp/BasicDreams.vdex -o /tmp --deps -f
[INFO] Processing 1 file(s) from /tmp/BasicDreams.vdex
------- Vdex Deps Info -------
dex file #0
 extra strings: number_of_strings=2
  0000: 'Ljava/lang/Thread;'
  0001: 'Ljava/lang/Throwable;'
 assignable type sets: number_of_sets=8
  0000: 'Landroid/service/dreams/DreamService;' must be assignable to 'Landroid/content/Context;'
  0001: 'Landroid/view/TextureView;' must be assignable to 'Landroid/view/View;'
  0002: 'Ljava/nio/FloatBuffer;' must be assignable to 'Ljava/nio/Buffer;'
...
 unassignable type sets: number_of_sets=0
 class dependencies: number_of_classes=34
  0000: 'Landroid/graphics/Color;' 'must' be resolved with access flags '1'
  0001: 'Landroid/graphics/SurfaceTexture;' 'must' be resolved with access flags '1'
...
  0024: 'Ljavax/microedition/khronos/egl/EGL10;' 'must' be resolved with access flags '513'
...
 field dependencies: number_of_fields=4
  0000: 'Ljavax/microedition/khronos/egl/EGL10;'->'EGL_DEFAULT_DISPLAY':'Ljava/lang/Object;' is expected to be in class 'Ljavax/microedition/khronos/egl/EGL10;' and have the access flags '9'
  0001: 'Ljavax/microedition/khronos/egl/EGL10;'->'EGL_NO_CONTEXT':'Ljavax/microedition/khronos/egl/EGLContext;' is expected to be in class 'Ljavax/microedition/khronos/egl/EGL10;' and have the access flags '9'
  0002: 'Ljavax/microedition/khronos/egl/EGL10;'->'EGL_NO_DISPLAY':'Ljavax/microedition/khronos/egl/EGLDisplay;' is expected to be in class 'Ljavax/microedition/khronos/egl/EGL10;' and have the access flags '9'
  0003: 'Ljavax/microedition/khronos/egl/EGL10;'->'EGL_NO_SURFACE':'Ljavax/microedition/khronos/egl/EGLSurface;' is expected to be in class 'Ljavax/microedition/khronos/egl/EGL10;' and have the access flags '9'



熱門文章
  • 機械革命S1 PRO-02 開機不顯示 黑...
  • 聯想ThinkPad NM-C641上電掉電點不...
  • 三星一體激光打印機SCX-4521F維修...
  • 通過串口命令查看EMMC擦寫次數和判...
  • IIS 8 開啟 GZIP壓縮來減少網絡請求...
  • 索尼kd-49x7500e背光一半暗且閃爍 ...
  • 樓宇對講門禁讀卡異常維修,讀卡芯...
  • 新款海信電視機始終停留在開機界面...
  • 常見打印機清零步驟
  • 安裝驅動時提示不包含數字簽名的解...
  • 共享打印機需要密碼的解決方法
  • 圖解Windows 7系統快速共享打印機的...
  • 錦州廣廈電腦上門維修

    報修電話:13840665804  QQ:174984393 (聯系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號:遼ICP備2023002984號-1
    上門服務區域: 遼寧錦州市區
    主要業務: 修電腦,電腦修理,電腦維護,上門維修電腦,黑屏藍屏死機故障排除,無線上網設置,IT服務外包,局域網組建,ADSL共享上網,路由器設置,數據恢復,密碼破解,光盤刻錄制作等服務

    技術支持:微軟等
    主站蜘蛛池模板: 国产在线无码一区二区三区视频| 久久久久久无码Av成人影院 | 日韩AV高清无码| 无码高潮少妇毛多水多水免费| 久久久久亚洲AV无码网站| 无码高潮少妇毛多水多水免费| 国产仑乱无码内谢| 无码精品A∨在线观看免费| 免费无码国产在线观国内自拍中文字幕| 国内精品无码一区二区三区| 无码乱码av天堂一区二区| 久久久人妻精品无码一区| 亚洲国产精品无码久久98| 亚洲综合无码AV一区二区| 精品久久久久久久无码久中文字幕 | av色欲无码人妻中文字幕| 亚洲成AV人片天堂网无码 | 亚洲色无码专区一区| 久久综合一区二区无码| 亚洲AV成人噜噜无码网站| 国产真人无码作爱视频免费 | 成人无码A区在线观看视频| 亚洲av永久无码精品天堂久久 | 亚洲永久无码3D动漫一区| 人妻少妇精品无码专区| 日韩国产成人无码av毛片| 最新国产精品无码| 成年无码av片在线| 亚洲午夜福利精品无码| 少妇特殊按摩高潮惨叫无码| 久久精品国产亚洲AV无码麻豆 | 免费A级毛片无码A∨免费| 成年无码av片完整版| 综合无码一区二区三区| 亚洲精品无码你懂的网站| 最新亚洲人成无码网站| 无码人妻精品内射一二三AV| 亚洲αⅴ无码乱码在线观看性色| 亚洲国产精品成人精品无码区在线| 日韩精品无码人成视频手机| 久久影院午夜理论片无码|