ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Bumblebee 版 Android Studio Windows 配置避坑指南

Bumblebee 版 Android Studio Windows 配置避坑指南 简介Android Studio Bumblebee 2021.1.1 Patch 3 是针对Windows x86_64平台的官方IDE发行包适合Android应用开发者用于搭建或升级本地开发环境。该版本处于Google新命名体系下的Bumblebee系列内部对应Android Studio 4.4包含构建、调试、模拟器等主流功能。资源包约882.57MB共2776个文件其中大量jar与exe支撑IDE核心运行py、js、ts等脚本文件提供构建与工具链支持dll、so为底层依赖同时附带json配置、ttf/otf字体及各类license说明整体目录结构完整规范。目前已有619人学习下载。获取后可得到一个无需联网二次配齐的完整安装包形态便于离线部署、团队分发或对照官方版本进行定制化研究其中大量开源组件的NOTICE与许可信息也有助于核对依赖来源与合规性。1. Bumblebee 这个版本值不值得装从 2021.1.1.23 的 Windows 版说起Android Studio Bumblebee2021.1.1.23 Windows 版这几年一直是我手头的主力 IDE。它对应的 AGP 7.1.x 和 Gradle 7.2 组合已经相当成熟不像后来的版本那样动不动就要求 JDK 17、强制走 Compose 模板。如果你手头是一台配置不算高的 Windows 机器或者你维护的项目还是用 Kotlin 1.5/1.6 写的Bumblebee 反而比最新版更省心。这篇笔记会从安装、SDK 配置、中文化、Gradle 同步到真机调试完整拆一遍重点放在 Windows 上最常见的几个坑照着走基本能一次跑通。2. 安装前的准备JDK、SDK 与系统环境的三个取舍2.1 JDK 版本怎么选Bumblebee 对 JDK 11 的依赖边界Bumblebee 安装包内置了 JetBrains Runtime 11理论上你不需要单独装 JDK 就能把 IDE 跑起来。但实际项目开发里有个容易被忽略的边界IDE 自带的 JBR 只负责运行 Android Studio 本身Gradle 编译用的却是JAVA_HOME指定的 JDK两者不是一回事。如果你在环境变量里装了 JDK 8 或者 JDK 17Gradle 就会拿那个版本去编译而 AGP 7.1 对 JDK 11 的依赖是写死的JDK 8 跑不动 AGP 7.1JDK 17 又会出现 class 文件版本不兼容的报错。我一般会在 Windows 上装两个 JDK一个 8 给老项目备用一个 11 给 Bumblebee 用。切换时改JAVA_HOME就行不用重启系统。这里有一个细节值得注意改完JAVA_HOME后原来打开的命令行窗口里的环境变量不会自动刷新必须新开一个终端窗口再验证。:: 查看当前 JAVA_HOME 指向 echo %JAVA_HOME% :: 临时切到 JDK 11仅对当前终端窗口生效 set JAVA_HOMEC:\Program Files\Java\jdk-11.0.17 set PATH%JAVA_HOME%\bin;%PATH% :: 验证是否切换成功 java -version这段命令的逻辑是先把当前指向打出来确认是不是被某个软件的安装程序改过然后把JAVA_HOME指到 JDK 11 的安装目录再把 JDK 11 的bin目录放到PATH最前面这样终端里执行java时命中的就是新版本。注意set PATH必须放在set JAVA_HOME之后否则系统会在旧路径里找java.exe看起来像没切换成功。如果你用的是 PowerShell语法上要把set换成$env:JAVA_HOME...效果一样。2.2 SDK 组件与国内下载加速镜像源配置装完 IDE 后第一次启动会让你指定 Android SDK 路径默认是%USERPROFILE%\AppData\Local\Android\Sdk。这个路径本身没问题但国内网络环境下 SDK Manager 拉取 Platform 和 build-tools 经常慢到让人怀疑人生。通用的做法是在 SDK Manager 的 SDK Update Sites 里配置镜像源。打开方式启动 Android Studio进入 Settings - Appearance Behavior - System Settings - Android SDK点 SDK Update Sites 标签页把官方源替换成腾讯、阿里维护的镜像地址。替换后一定要点右边的 Reload 按钮让 IDE 重新拉取组件列表。这一步很多人会漏以为保存了就生效结果列表还是旧快照装了老半天发现组件版本不对。:: 假设你的 SDK 在默认路径 set ANDROID_HOME%USERPROFILE%\AppData\Local\Android\Sdk :: 列出当前已安装的 SDK 组件 %ANDROID_HOME%\cmdline-tools\latest\bin\sdkmanager --list_installed这条命令会把已安装的 platform、build-tools、platform-tools 全部列出来适合在配置完之后做一次体检。如果提示找不到cmdline-tools目录说明首次向导里漏装了 Command-line Tools回到 SDK Manager 补装。这个目录很重要后面很多自动化脚本都要用到sdkmanager早装早省事。2.3 首次启动的向导配置SDK Manager 参数细节首次向导会让你勾选要装的 SDK 组件我建议只挑三类Android SDK Platform对应项目 targetSdk 版本、Sources for Android SDK方便看系统源码、Android SDK Command-line Tools。build-tools 不用单独勾AGP 在构建时会根据buildToolsVersion自动拉取匹配版本勾了反而占磁盘空间。如果你用的是 AMD CPUIntel HAXM 是不支持的需要在 Windows 功能里打开 Windows Hypervisor Platform或者让 Android Emulator 使用自带的 Hypervisor 驱动。这一步经常被忽略很多人模拟器起不来就是卡在虚拟化加速没开。另外如果主板 BIOS 里的 VT-x 或 AMD-V 被关掉了Windows 层面的虚拟化平台开了也是白开需要重启进 BIOS 确认。首次向导里还有个容易忽略的选项SDK Manager 底部的 Show Package Details。勾上它才能看到每个 Platform 下的具体子版本比如 API 30 还分android-30、android-30-ext等有些依赖android-30-ext的项目如果不勾细节根本装不上。3. 安装与首次同步从下载到 Gradle 跑通的完整步骤3.1 安装包静默安装与自定义路径android-studio-2021.1.1.23-windows.exe 这个安装包虽然带图形向导但也支持静默安装。如果你要重装系统后快速恢复开发环境或者要给几台机器批量装命令行安装是最省事的方案。:: 静默安装到 D 盘指定目录不创建开始菜单快捷方式 android-studio-2021.1.1.23-windows.exe /S /DD:\DevTools\AndroidStudio/S是 NSIS 安装器的静默模式参数/D指定安装目录。这里有两个坑/D必须是命令行里的最后一个参数而且路径不要加引号即使路径里有空格也别加NSIS 就这个脾气。装完以后第一次启动会问你要不要导入旧配置选 Do not import settings除非你确定旧配置里没有冲突的插件设置。3.2 新建项目与 Gradle 第一次同步新建项目时模板选 Empty Views ActivityBumblebee 默认的主线还是 View 体系不建议选 Compose 模板理由很简单Compose 需要额外的编译器插件第一次同步要多拉不少依赖容易卡住。项目创建后 Gradle 会开始第一次同步Windows 上最典型的卡点就是 Downloading gradle-7.2-bin.zip。这个问题的根源在于 Gradle Wrapper 默认从services.gradle.org下载国内直连速度差、容易超时。我习惯做两件事第一把gradle/wrapper/gradle-wrapper.properties里的 distributionUrl 换成腾讯镜像第二在根目录build.gradle的repositories里加阿里云镜像并且放到google()前面。# gradle-wrapper.properties distributionUrlhttps\://mirrors.cloud.tencent.com/gradle/gradle-7.2-bin.zip// 根目录 build.gradle buildscript { repositories { maven { url https://maven.aliyun.com/repository/google } maven { url https://maven.aliyun.com/repository/public } google() mavenCentral() } }代理配置的核心逻辑是repositories里的仓库会按声明的顺序依次尝试把阿里云镜像放在前面Gradle 会优先从镜像拉依赖命中率很高google()和mavenCentral()作为兜底保证镜像里没有的依赖也能拿到。注意这段写法在 Gradle 7.2 里可以用但如果你之后升级到 Gradle 8maven { url ... }要改成maven { url uri(...) }不然会报语法错误。3.3 AGP 版本与 Gradle 版本的对应关系Bumblebee 自带的 AGP 是 7.1.x这个版本对 Gradle 的最低要求是 7.2。如果你从旧项目升级过来原来用的可能是 Gradle 6.7 甚至更低那第一次同步一定会报 Minimum supported Gradle version。组件推荐版本最低要求Gradle7.27.2AGP7.1.17.1.0Kotlin1.5.311.5.0JDK1111这个表格是 Bumblebee 这个组合的相对稳妥搭配。注意 AGP 7.1 要求 compileSdk 至少 30我一般直接设 31因为 API 31 对应的是 Android 12Bumblebee 发布时已经完整支持。如果你项目里写的是 29同步时会直接报错去 SDK Manager 装对应 Platform 即可。另一个细节是settings.gradle里的pluginManagement块。新建项目模板会自动生成这段里面声明了插件仓库的查找顺序别手贱删掉否则插件默认走google()拉取速度明显变慢。我也见过有人把整个pluginManagement都删了改成旧的buildscript方式结果插件版本解析逻辑全乱套。4. 中文界面与日常开发配置汉化包、字体与模拟器参数4.1 中文语言包安装两种做法与验证Android Studio 的界面语言默认跟随系统区域。Windows 系统是中文的话Bumblebee 的菜单大概率会自动显示中文如果系统语言是英文想看中文菜单就要手动装语言包。在 Settings - Plugins 里搜 Chinese (Simplified)找到 JetBrains 官方的中文语言包插件Install 后重启 IDE 即可。插件安装本质上就是把一个语言资源包丢进 IDE代码提示、菜单、设置项都会跟着变但日志和控制台输出还是英文的这不是汉化失败是正常现象。:: 也可以用命令行装插件适合批量配置环境 D:\DevTools\AndroidStudio\bin\idea.bat installPlugins com.intellij.zh-cn命令行安装的核心参数是插件 IDcom.intellij.zh-cn这个 ID 是固定的跟你在插件市场看到的名字不一样。如果你的安装路径不是D:\DevTools\AndroidStudio要改成你自己的路径。装完以后在 Settings - Plugins 的 Installed 标签里确认插件处于启用状态重启后菜单变成中文就成了。4.2 模拟器 AVD 的创建参数与冷启动优化Bumblebee 自带的 Device Manager 创建 AVD 时很多人设置的参数不合理导致启动慢、黑屏。我的建议是API 级别选 30 或 31设备类型选 Pixel 4内存给 2048 MB 起步。AVD 的配置文件在%USERPROFILE%\.android\avd\名字.avd\config.ini有几个参数值得手动改hw.ramSize2048 hw.gpu.enabledyes hw.gpu.modeauto disk.dataPartition.size4Ghw.ramSize是模拟器内存太小会频繁触发系统回收hw.gpu.enabled必须开否则界面渲染走 CPU卡到没法用disk.dataPartition.size是用户数据分区大小默认 800M 经常装几个应用就满了。GPU 模式保持auto即可如果你的 Windows 机器显卡太老改成swiftshader_indirect走软件渲染帧数低一点但能保证不黑屏。创建完 AVD 后用命令行冷启动一次能快速暴露配置问题%ANDROID_HOME%\emulator\emulator.exe -avd Pixel_4_API_30 -no-snapshot -no-boot-anim-no-snapshot跳过快照强制冷启动适合排查上次启动正常、这次黑屏的诡异问题-no-boot-anim关掉开机动画能省几秒。如果这个命令能正常进入桌面说明 AVD 配置没问题。4.3 真机调试ADB 驱动与无线调试Windows 上真机调试有两个坎驱动装不好导致 ADB 认不出设备。大部分国产手机连上电脑后需要到官网下 Windows 驱动或者直接用手机助手装驱动。连上后跑一句adb devices -l列表里能看到型号说明驱动正常。如果显示unauthorized是手机上的 USB 调试授权弹窗没确认重新插拔或者点手机上的 允许 USB 调试。如果列表是空的去设备管理器找带感叹号的设备手动更新驱动。USB 线是个玄学问题。我遇到过 Type-C 原装线连接正常换了一根线后adb devices直接空白最后发现那根线只支持充电不支持数据传输。后来我验证线材都直接看设备管理器里有没有出现 ADB 接口而不是看手机有没有在充电。无线调试在 Bumblebee 的 AGP 7.1 下支持 Android 11 以上系统。手机和电脑连同一个 WiFi先用 USB 建立信任再走命令:: 先在 USB 连接状态下执行 adb tcpip 5555 :: 拔掉 USB用手机 IP 连接 adb connect 192.168.1.100:55555555是 ADB 的默认端口改其他端口也行但两端必须一致。无线调试适合频繁拔插不便的场景缺点是装大 APK 时比 USB 线慢日志刷屏时也可能有丢包。5. 避坑指南Windows 上 Bumblebee 的五个常见翻车现场5.1 现象Gradle 同步卡在 Downloading gradle-7.2-bin.zip第一次同步进度条长时间不动过一会儿报超时。原因是 Gradle Wrapper 默认从services.gradle.org下载发行包国内直连速度差、容易中断。解决方式是把gradle-wrapper.properties里的 distributionUrl 改成腾讯镜像https://mirrors.cloud.tencent.com/gradle/gradle-7.2-bin.zip。改完后删除项目根目录的.gradle文件夹和%USERPROFILE%\.gradle\wrapper\dists下面对应的版本目录重新同步。旧的下载缓存不删干净有时会拿残损的 zip 继续跑报zip END header not found那个错就完全没有误导性。5.2 现象SDK Manager 里看不到最新 API 版本打开 SDK Platforms 标签列表只到 API 30没有 31 或更高。原因是 SDK Update Sites 里的镜像源返回的是缓存快照没有触发重新拉取。解决方法是切到 SDK Update Sites 标签点 Reload 强制刷新。如果还不行先把自定义镜像源恢复成官方默认Reload 一次看列表再切回镜像源。这个看起来有点蠢的操作实际解决了我两三次类似问题。5.3 现象模拟器启动后黑屏但进程还活着AVD 窗口是黑的鼠标能点但一直进不了系统桌面。原因是 GPU 渲染模式不兼容或者 Windows Hypervisor Platform 没开。先用-gpu swiftshader_indirect启动模拟器验证如果能进桌面说明显卡驱动或 GPU 模式有问题去设备管理器更新显卡驱动如果还是黑屏检查 Windows 功能里的 Windows Hypervisor Platform 有没有勾选勾选后需要重启系统。另外确认 BIOS 里的 VT-x/AMD-V 已经开启这个不亮Windows 里怎么配都是空转。5.4 现象adb devices 能识别设备但 Logcat 里看不到日志设备在列表里正常应用也装了Logcat 面板是空的。主要原因是过滤器选了 Show only selected application 但进程没匹配上或者设备时间与电脑时间不一致导致时间戳错乱。解决方式先点 Logcat 面板左上角的漏斗图标清掉过滤器看有没有全局日志输出然后检查设备时间日期不对就先校准最后执行adb kill-server adb start-server重启 ADB 服务这条命令能解决一大部分 ADB 的玄学问题。5.5 现象中文语言包装完菜单还是英文插件显示已安装重启后界面没变。原因是 IDE 的 locale 被设置成英文语言包的默认状态被覆盖。解决方式在 Settings - Appearance Behavior - System Settings - Language and Region 里把语言改成 简体中文重启 IDE。如果没有这个选项右键桌面快捷方式在目标末尾加-Duser.languagezh -Duser.countryCN再启动。这个启动参数是 JVM 级别的优先级比界面设置更高。6. 把项目从旧版本迁到 Bumblebee一次完整的迁移复盘假设你手里的项目之前用 Android Studio 4.2 维护AGP 是 4.2.1Gradle 是 6.7。迁移到 Bumblebee 要动四个地方gradle-wrapper.properties的 Gradle 版本、根目录build.gradle的 AGP 版本、settings.gradle的插件仓库、以及app/build.gradle的compileSdk。// gradle-wrapper.properties 改成腾讯镜像 distributionUrlhttps\://mirrors.cloud.tencent.com/gradle/gradle-7.2-bin.zip // 根目录 build.gradle 换成 AGP 7.1.1 plugins { id com.android.application version 7.1.1 apply false } // app/build.gradle 里 compileSdk 从 29 改成 31 android { compileSdk 31 }这些改动有顺序讲究先改 Gradle 版本再改 AGP最后改 compileSdk。因为 Gradle 版本决定 AGP 能不能跑AGP 版本决定 compileSdk 是否被允许。我吃过一次亏先改的 compileSdk 结果 Gradle 还是旧版报错信息指向compileSdk但其实根因是 Gradle 版本不够排查了半天。验证迁移成功的信号有三个第一Gradle 同步时不再报 Minimum supported Gradle version 或 compileSdk 版本过低第二app/build.gradle里的targetSdk提到 30 或 31 之后aapt2编译没有新增警告第三Release 包能正常打出来gradlew assembleRelease这条命令会走完资源合并、混淆、签名整条链路如果它能产出app-release.apk说明 AGP 7.1 在你的 Windows 环境上完整可用。那次迁移还踩了一个隐蔽的坑项目里有个模块用的 Kotlin 1.4而 AGP 7.1 要求 Kotlin 1.5 以上升级之后kotlin-android-extensions插件报了 deprecation 警告。这个不影响编译但要尽早迁到 ViewBinding。从那以后我每次升级 IDE 版本都会先列一个四行清单Gradle、AGP、Kotlin、compileSdk按顺序改挨个验证再也没在升级上浪费过半天时间。希望这份笔记能帮你在 Windows 上把 Bumblebee 一次跑通。本文还有配套的精品资源点击获取
返回列表