背景
編譯flutter和cronet(chromium分離)在android --AS 環(huán)境中使用會(huì)導(dǎo)致調(diào)試?yán)щy,所以下面是用VScode進(jìn)行調(diào)試的步驟
編譯
編譯出so,報(bào)錯(cuò)符號(hào)so
首次調(diào)試,利用AS將lldb推到APP的沙盒里, 重啟進(jìn)程

AS步驟
利用終端啟動(dòng)沙盒l(wèi)ldb-server
127|blueline:/ $ run-as tv.athena.service.demo
查看是否存在

lldb
修改權(quán)限
blueline:/data/data/tv.athena.service.demo $ chmod -R 755 lldb/bin/*
啟動(dòng)server
blueline:/data/data/tv.athena.service.demo $ lldb/bin/lldb-server platform --server --listen unix-abstract:///data/local/tmp/debug.sock
找到pid

pid
寫AS的launch.json文件
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 啟動(dòng)",
"type": "lldb",
"request": "attach",
"pid":19621,
"initCommands": [
"platform select remote-android",
"platform connect unix-abstract-connect:///data/local/tmp/debug.sock"
],
"postRunCommands": [
"target symbols add [so-path]",
"settings set target.source-map [old-path] [new-src-path]"
],
}
]
開始調(diào)試

debug