vim調試android項目腳本完成

這個我絕對hold不住了,以前一直想在vim裏面爲android項目打斷點。不過最後只能作到輸出用於打斷點的命令,而沒法和jdb結合起來運行。不過昨天無聊去stackoverflow上問了一下以後,竟然找到了解決辦法。這個世界太美好了!java

如今的缺陷是沒法debug inner class,等何時蛋疼了再寫個正則匹配下內部類。不過如今這種程度應該能解決不少問題了。android

下面上渣代碼,請盡情噴。shell

vim script:vim

function! DebugContacts()
    let ori_str = expand("%:r")
    let start_index = matchend(ori_str, "src\.")
    let debug_path = strpart(ori_str, start_index, strlen(ori_str))
    let debug_path = substitute(debug_path, "/", ".", "g")

    let debug_path .= ":".line(".")
    echo expand(debug_path)
    exec "!echo stop at ".debug_path
    exec "!{ echo "." stop at \"".debug_path."\"; cat; } | debug_contacts"
endf

noremap <leader>dd :call DebugContacts()<cr>

debug_contacts是寫在shell腳本里面的tcp

 

function debug_contacts() 
{
    local pid=$(adb shell ps | grep android.process.acore | awk '{print $1}')
    adb forward tcp:7777 jdwp:$pid
    jdb -attach 7777 -sourcepath $CONTACTS/src
}

大概是這樣子了,我先爽去了。debug

相關文章
相關標籤/搜索