解决 vscode 中导入 android aosp 源码卡顿问题

正常情况,我们clone 了 aosp 源码,直接导入vscode ,搜索和点击方法跳转都是要等半天的。解决方案如下,先查看一下源码下各目录的大小

du -h --max-depth=1 ~/aosp | sort -h

显然能看出整体源码占 305G,其中out .repo,prebuilts 占了大头,因此可以在vscode 设置排除,从而减少索引建立时间

我的排除列表

源码目录,新建一个.vscode 目录,下面创建一个 settings.json 文件

复制代码
{
    "files.exclude": {
        "**/.repo": true,
        "**/out": true,
        "**/prebuilts": true,
        "**/kernel": true,
        "**/cts": true,
        "**/packages": true,
        "**/developers/**": true,
        "**/development/**": true,
        "**/test/**": true,
        "**/tools/**": true,
        "**/platform_testing/**": true,
        "**/toolchain/**": true,
        "**/pdk/**": true,
        "**/sdk/**": true,
        "**/build/**": true
    },
    "search.exclude": {
        "**/.repo": true,
        "**/out": true,
        "**/prebuilts": true,
        "**/kernel": true,
        "**/cts": true,
        "**/packages": true,
        "**/developers/**": true,
        "**/development/**": true,
        "**/test/**": true,
        "**/tools/**": true,
        "**/platform_testing/**": true,
        "**/toolchain/**": true,
        "**/pdk/**": true,
        "**/sdk/**": true,
        "**/build/**": true
    },
    "files.watcherExclude": {
        "**/.repo/**": true,
        "**/out/**": true,
        "**/prebuilts/**": true,
        "**/kernel": true,
        "**/cts": true,
        "**/packages": true,
        "**/developers/**": true,
        "**/development/**": true,
        "**/test/**": true,
        "**/tools/**": true,
        "**/platform_testing/**": true,
        "**/toolchain/**": true,
        "**/pdk/**": true,
        "**/sdk/**": true,
        "**/build/**": true
    },
    "C_Cpp.errorSquiggles": "disabled",
    "java.project.sourcePaths": [
        "frameworks/base",
        "libcore"
    ],
    "java.import.exclusions": [
        "**/.repo",
        "**/out",
        "**/prebuilts",
        "**/external",
        "**/device",
        "**/kernel",
        "**/cts",
        "**/packages",
        "**/test",
        "**/tools",
        "**/developers",
        "**/development",
        "**/platform_testing",
        "**/sdk",
        "**/toolchain",
        "**/pdk",
        "**/bootable"
    ],
    "java.autobuild.enabled": false,
    "java.import.gradle.enabled": false,
    "java.import.maven.enabled": false
}

以上是我的一些排除选项,现在解决了搜索慢的问题,还存在点击代码接口跳转慢的问题需要解决

解决点击接口跳转慢的问题

在 ~/.vscode/c_cpp_properties.json 里粘贴这个完整配置,如果没有自行创建这个文件

复制代码
{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/bionic/libc/include",
                "${workspaceFolder}/system/core/include",
                "${workspaceFolder}/frameworks/native/include",
                "${workspaceFolder}/frameworks/base/include",
                "${workspaceFolder}/hardware/libhardware/include",
                "${workspaceFolder}/external/**",
                "${workspaceFolder}/libnativehelper/include",
                "${workspaceFolder}/system/core/libcutils/include",
                "${workspaceFolder}/system/core/libutils/include",
                "${workspaceFolder}/frameworks/native/libs/binder/include"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c11",
            "cppStandard": "gnu++14",
            "intelliSenseMode": "linux-gcc-x64"
        }
    ],
    "version": 4
}

注意

如果配置都基本一样的情况,你的跳转或者搜索还是慢

  1. 看看配置的json 文件格式是否有误,例如结尾不能加逗号等等(可以发送给AI 帮你审查)
  2. 看看插件是否安装上,问ai 它会推荐对应的插件给你的。下面插件截图供参考,说不定过段时间就改名了,或者有其他更好用的插件,起码目前来说我的搜索慢,点击接口跳转慢或者无法跳转问题都得到解决了。
相关推荐
码云骑士1 小时前
Android ADB常用命令
android·adb
Kapaseker1 小时前
五分钟搞定 Compose 用户名密码自动填充
android·kotlin
EasyCVR1 小时前
监控“孤岛”困局:国标GB28181视频监控平台EasyCVR一站式视频融合平台实现视频系统统一管理
android·音视频
眸生1 小时前
基于NeteaseCloudMusicApi的音乐app 支持 DeepSeek 自然语言找歌、批量导入歌单、下载音乐转换成MP3,下载歌词
android·python·kotlin·android studio·音频·fastapi·android jetpack
问心无愧05131 小时前
ctf show web入门68,69
android·前端·笔记
IOT.FIVE.NO.12 小时前
Claude code+Vscode+Remote ssh+ 服务器自定义第三方API配置保姆级教程
服务器·vscode·ssh
码上有光2 小时前
c++: 继承(下)
android·java·c++·多继承·菱形继承·虚继承
AI玫瑰助手2 小时前
Python函数:可变参数(星号args与双星号kwargs)详解
android·开发语言·python
_李小白13 小时前
【android opencv学习笔记】Day 28: 滤波算法之中值滤波器
android·opencv·学习