smalidea動態調式Android smali代碼

前文:

smalidea是IntelliJ IDEA / Android Studio的一個小插件.

不太適用於混淆嚴重或者加固的應用程序.

安裝:

  1. 從Bitbucket(https://bitbucket.org/JesusFreke/smali/downloads/)下載頁面下載最新的smalidea.zip文件;
  2. 在IDEA / AS中,設置 -> 插件,然後單擊“從磁盤安裝插件”按鈕,選擇下載的smalidea.zip文件;
  3. 單擊“應用”並重新啓動IDEA / AS。

調試應用程序:

注意:單步指令僅在IDEA 14.1及更高版本以及基於IDEA 14.1或更高版本的Android Studio中被支持。在早期版本中,嘗試單步執行將轉到下一個.line指令,而不是單步執行下一條指令。

1、使用baksmali將應用程序手動反彙編到新項目目錄的“src”子目錄中,例如 baksmali d myapp.apk -o ~/projects/myapp/src

2、在IDEA中,導入一個新項目,然後選擇項目目錄。例如~/projects/myapp

3、導入項目時,使用“從現有源創建項目”選項

4、創建項目後,右鍵單擊src目錄並選擇“Mark Directory As-> Sources Root”

5、打開項目設置,然後選擇/創建適當的JDK

6、在設備上安裝/啓動應用程序

7、運行ddms,然後選擇應用程序的進程

8、在IDEA中,創建新的“遠程”調試配置(運行 - >編輯配置),並將調試端口更改爲8700

9、下斷點,在需要調試的地方下斷點即可

10、運行 - >調試

11、如果/當斷點被擊中時,應用程序應暫停,此時您可以單步執行,添加監視等。

再者:最近的Android Studio 3.2中執行以下操作:

  1. 使用baksmali將應用程序手動反彙編到新項目目錄的“src”子目錄中,例如 baksmali d myapp.apk -o ~/projects/myapp/src
  2. 在Android Studio中,關閉當前項目並選擇“打開現有的Android Studio項目”。
  3. 創建項目後,右鍵單擊src目錄並選擇“Mark Directory As-> Sources Root”
  4. 確保您的應用具有android:debuggable="true"Android Manifest。打開“USB調試”並使用“選擇調試應用”在Android設備的“開發人員選項”中選擇
  5. 使用啓動應用程序並將JDWP服務轉發到localhost adb forward tcp:8700 jdwp:$(timeout 0.5 adb jdwp | tail -n 1)(替代ddms)
  6. 在Android Studio中,創建一個新的“遠程”調試配置(運行 - >編輯配置),並將調試端口更改爲8700
  7. 在Android Studio中,選擇“運行” - >“調試”

如果/當斷點被擊中時,應用程序應暫停,此時您可以單步執行,添加監視等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章