av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Android Studio 3.6 調試 smali的全過程

瀏覽:24日期:2022-09-27 09:27:37

Android Studio 3.6 正式版終于發布了,快來圍觀,點擊查看。

簡介

Smali是用于Dalvik(Android虛擬機)的反匯編程序實現,匯編工具(將Smali代碼匯編為dex文件)為smali.jar,與之對應的baksmali.jar則是反匯編程序(下載地址),官方所說的基于Jasmin/dedexer語法,實際根不知道是什么鬼……

Smali支持注解、調試信息、行數信息等基本Java的基本特性,可以說是很接近Java編譯在JVM上的中間語言了,一般用來做Android程序的逆向工程,還可以。。搞搞小名堂

個人認為Smali只是用于做反匯編的一種語言實現,如果可以,自己也能定義一套這樣的語言,實現反匯編的效果

好了,下面看下正文。

以前在Android Studio中調試 smali 還是非常麻煩的時候,配置不好就是

Error running Smali: Unable to open debugger port (localhost:8700): java.io.IOException 'handshake failed - connection prematurally closed

目前最新版的 Android Studio 利用附加功能調試 smali 非常方便 ,操作步驟如下:

文中會用到工具及下載地址:

①、apktool.jar(目前最新版 v2.4.1),用于反編譯smali,

下載地址: https://ibotpeaches.github.io/Apktool/

②、Android Studio (目前最新版本 3.6)用于Android開發調試IDE,

下載地址: https://developer.android.google.cn/studio/

③、smalidea-0.05.zip (目前最新版 0.05),AS 插件,用來給smali下斷點,單步調試,

下載地址 https://bitbucket.org/JesusFreke/smali/downloads/

1. 先配置好Android Studio開發環境,這步就略去2. Android Studio中安裝 smalidea 插件,先從官網下載 smalidea zip包,然后在 Android 中依次選擇:

File --> Setting 將會彈出設置對話框

Android Studio 3.6 調試 smali的全過程

然后在設置對話框依次選擇: Plugins --> <設置圖標> --> Install Plugin from Disk...

Android Studio 3.6 調試 smali的全過程

在彈出選擇對話框中,找到下載好的 smalidea 壓縮包,選擇ok即可

Android Studio 3.6 調試 smali的全過程

至此,插件安裝就完成了,關閉 Android Studio

3. 用 apktool 反編譯 apk

使用命令 : java.exe -jar apktool.jar d -f <xxxx.apk> -o <xxxx目錄>

也可以直接使用 ApkTool 集成環境(如果反編譯失敗可以替換其中的 apktool.jar 至最新版):

Android Studio 3.6 調試 smali的全過程

在 反編譯出來的 AndroidManifest.xml 的 application 節點添加 android:debuggable='true'

然后在 主 Activity 中加入 invoke-static {},Landroid/os/Debug;->waitForDebugger()V

Android Studio 3.6 調試 smali的全過程

重建且簽名 apk

Android Studio 3.6 調試 smali的全過程

安裝 重建后的 apk 到手機

(這步如果重新打包失敗,可以安裝原始包,把手機 root 配置/default.prop 的 ro.debuggable=1 開啟全局調試。

然后用命令啟動 Activiry : adb shell am start -D -n package屬性的值/android:name屬性的值 )

4. 將 反編譯工程導入到 Android Studio

Android Studio 3.6 調試 smali的全過程

默認選擇 Create project from existing sources ,一路 next ,最后點擊 Finish 即可

用 Project 視圖,在項目目錄右鍵 --> Mark Directory as ... --> Sources root

Android Studio 3.6 調試 smali的全過程

5. 展開 smali 目錄選擇剛才添加 waitForDebugger 代碼的 smali 文件下一行下斷點

Android Studio 3.6 調試 smali的全過程

6. 運行手機上安裝的apk(apk會假死停在 waitForDebugger 代碼處,等待調試器)。

7.在Android Studio選擇附加

Android Studio 3.6 調試 smali的全過程

此時,已經 Attach 到進程中,可以快樂的調試了

Android Studio 3.6 調試 smali的全過程

總結

到此這篇關于Android Studio 3.6 調試 smali的全過程的文章就介紹到這了,更多相關Android Studio 3.6 調試 smali內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Android
相關文章:
主站蜘蛛池模板: 欧美国产精品一区二区 | 国产高清视频一区 | 精品国产乱码久久久久久影片 | 色www精品视频在线观看 | 国产精品二区三区在线观看 | 精品亚洲一区二区三区四区五区高 | 欧美在线一区二区三区 | 免费a在线| 日本韩国电影免费观看 | 日日夜夜av | 婷婷色国产偷v国产偷v小说 | 久久久天天 | 四虎在线观看 | 久久久亚洲 | 亚洲一区二区三区免费视频 | 亚洲视频精品 | 亚洲欧美日韩精品久久亚洲区 | 成人国产精品入口免费视频 | 国产性网 | 精品av | 国产福利在线看 | 日韩国产精品一区二区三区 | 免费成人高清在线视频 | 午夜午夜精品一区二区三区文 | 精品一区二区三区在线观看国产 | 国产精品久久久久久久一区二区 | 狠狠干狠狠插 | 亚洲在线高清 | 成人在线精品 | 欧美日韩一区在线播放 | 国产视频在线观看一区二区三区 | www.久久 | 久久一二 | 欧美日韩黄色一级片 | 超碰免费在线观看 | 精品一区在线 | 成人黄色在线 | 嫩草视频在线 | 国产精品亚洲精品日韩已方 | 国产乱码久久久久久一区二区 | 精品一区国产 |