本页面跟踪 Android Studio Meerkat 功能升级版和 Android Gradle 插件 8.10.0 的已知问题。如果您遇到此处未包含的问题,请报告错误。
升级到预览版: Android Studio 和 Android Gradle 插件的每个版本都旨在提高稳定性和性能,并添加新功能。要立即体验即将发布的版本带来的优势,请下载并安装Android Studio 预览版。
Android Studio 已知问题
本节介绍 Android Studio 最新稳定版中存在的已知问题。
没有“启动前”Gradle 感知型 Make 的运行配置会导致部署错误
Android Studio Ladybug 功能升级版 Canary 9 中存在一个问题,该问题会从使用该版本打开的项目中移除运行配置信息。如果您在某个时候使用该版本打开过您的项目,并且运行您的应用导致“loading build artifacts”错误,请验证活跃的运行配置在“启动前 (Before launch)”部分中包含“Gradle 感知型 Make (Gradle-aware Make)”步骤。要验证这一点,请点击 运行/调试配置 (Run/Debug Configurations) > 编辑配置 (Edit Configurations),点击活跃的运行配置并确认“启动前 (Before launch)”部分中存在“Gradle 感知型 Make (Gradle-aware Make)”步骤。不幸的是,Android Studio 无法自动修复此问题,因为某些运行配置可能有意设置为不包含“Gradle 感知型 Make (Gradle-aware Make)”步骤。
“应用更改并重启 Activity (Apply Changes & Restart Activity)”不会在 API 级别 35 的设备或模拟器上重启 Activity
当您使用“应用更改并重启 Activity (Apply Changes & Restart Activity)”将代码更改部署到 API 35 设备时,应用不会重启,您也看不到更改的效果。如果您重新运行应用,将看到代码更改的效果。我们的团队正在积极调查此问题。
Firebase 助手窗口显示错误消息
如果 Firebase 助手窗口(主菜单中的 工具 (Tools) > Firebase)显示错误消息,请清除缓存并重启 Android Studio 以修复错误。
无法使用布局检查器隔离视图
使用嵌入式布局检查器 (Layout Inspector) 隔离视图的功能暂时不可用。我们正在努力在未来的版本中修复此问题。
并非所有 Compose 节点都可以使用布局检查器进行检查
如果您在使用布局检查器 (Layout Inspector) 时发现并非所有 Compose 节点都可以检查,这很可能是由于 Compose 1.5.0-alpha04 版本中已修复的错误。如果您遇到此问题,请确保升级到 Compose 1.5.0-alpha04 或更高版本。
渲染 Compose 预览时出错
从 Android Studio Chipmunk 开始,如果您在问题面板中看到 java.lang.NoSuchFieldError: view_tree_saved_state_registry_owner
或 java.lang.ClassNotFoundException: androidx.savedstate.R$id
,请确保在您的模块中包含 androidx.lifecycle:lifecycle-viewmodel-savedstate
的 debugImplementation
依赖项。
如果您在问题面板中看到 java.lang.NoSuchFieldError: view_tree_lifecycle_owner
,请确保在您的模块中包含 androidx.lifecycle:lifecycle-runtime
的 debugImplementation
依赖项。
如果您在问题面板中看到 java.lang.NoClassDefFoundError: Could not initialize class androidx.customview.poolingcontainer.PoolingContainer
或 java.lang.NoClassDefFoundError: androidx/customview/poolingcontainer/PoolingContainerListener
,请确保在您的模块中包含 androidx.customview:customview-poolingcontainer
的 debugImplementation
依赖项。
为密钥和密钥库使用不同密码时出错
从 4.2 版本开始,Android Studio 现在运行在 JDK 11 上。此更新导致与签名密钥相关的底层行为发生变化。
当您导航到 构建 (Build) > 生成签名的 Bundle / APK (Generate Signed Bundle / APK) 并尝试为应用包或 APK 配置应用签名时,为密钥和密钥库输入不同的密码可能会导致以下错误
Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores
要解决此问题,请为密钥和密钥库输入相同的密码。
安装 4.2 版本后 Android Studio 无法启动
Studio 尝试导入以前的 .vmoptions 并对其进行清理,使其与 JDK 11 使用的垃圾回收器兼容。如果此过程失败,对于在 .vmoptions 文件中设置了自定义 VM 选项的某些用户,IDE 可能无法启动。
要解决此问题,我们建议注释掉 .vmoptions 中的自定义选项(使用“#”字符)。.vmoptions 文件可在以下位置找到
Windows
C:\Users\YourUserName\AppData\[Local|Roaming]\Google\AndroidStudio4.2\studio64.exe.vmoptions
macOS
~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions
Linux
~/.config/Google/AndroidStudio4.2/studio64.vmoptions
如果尝试此解决方法后 Studio 仍无法启动,请参阅下面的升级后 Studio 无法启动。
使用数据库检查器 (Database Inspector) 的应用在 Android 11 模拟器上崩溃
使用数据库检查器 (Database Inspector) 的应用在 Android 11 模拟器上运行时可能会崩溃,并在 logcat 中显示类似以下错误
Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
要修复此问题,请导航到 工具 (Tools) > SDK 管理器 (SDK Manager),将您的 Android 11 模拟器升级到版本 9 或更高版本。在 SDK 平台 (SDK Platforms) 标签页中,选中标有 显示软件包详细信息 (Show Package Details) 的复选框,然后选择 Android 11 模拟器的修订版 9 或更高版本。
升级后 Studio 无法启动
如果 Studio 升级后无法启动,问题可能是由于从以前的 Android Studio 版本导入了无效配置或存在不兼容的插件。作为解决方法,请尝试删除(或重命名以进行备份)以下目录,具体取决于 Android Studio 版本和操作系统,然后再次启动 Android Studio。这将把 Android Studio 重置为默认状态,并移除所有第三方插件。
适用于 Android Studio 4.1 及更高版本
Windows:
%APPDATA%\Google\AndroidStudio<version>
示例:C:\Users\your_user_name\AppData\Roaming\Google\AndroidStudio4.1
macOS:
~/Library/Application Support/Google/AndroidStudio<version>
示例:~/Library/Application Support/Google/AndroidStudio4.1
Linux:
~/.config/Google/AndroidStudio<version>
和~/.local/share/Google/AndroidStudio<version>
示例:~/.config/Google/AndroidStudio4.1
和~/.local/share/Google/AndroidStudio4.1
适用于 Android Studio 4.0 及更早版本
Windows:
%HOMEPATH%\.AndroidStudio<version>\config
示例:C:\Users\your_user_name\.AndroidStudio3.6\config
macOS:
~/Library/Preferences/AndroidStudio<version>
示例:~/Library/Preferences/AndroidStudio3.6
Linux:
~/.AndroidStudio<version>/config
示例:~/.AndroidStudio3.6/config
请注意,Android Studio Canary 和 Beta 版本的配置目录是 PreviewX.Y
,而不是 <version>
的 X.Y
。例如,Android Studio 4.1 Canary 构建使用 AndroidStudioPreview4.1
,而不是用于发布候选版和稳定版的 AndroidStudio4.1
目录。
Kotlin 多平台项目中的编译问题
Kotlin MPP 代码中可能因缺少符号而出现编译错误。将您的 Kotlin 插件升级到 1.4 版本应能解决此问题。
Linux 上的键映射冲突
在 Linux 上,某些键盘快捷键与默认的 Linux 键盘快捷键以及 KDE 和 GNOME 等流行窗口管理器的快捷键冲突。这些冲突的键盘快捷键可能无法在 Android Studio 中按预期工作。
有关此问题(包括潜在解决方法)的更多信息,请参阅 IntelliJ 的 bug 跟踪器。
ChromeOS 上 UI 文本过小
在 ChromeOS 上,文本可能比以前的版本小得多。要解决此问题,请执行以下操作
- 通过点击 文件 (File) > 设置 (Settings) 打开 设置 (Settings) 窗口
- 导航到 外观与行为 (Appearance & Behavior) > 外观 (Appearance)。
- 选择 使用自定义字体 (Use custom font)。
- 增大字体大小。
- 在 设置 (Settings) 窗口中,导航到 编辑器 (Editor) > 字体 (Font)。
- 增大字体大小。
- 点击 确定 (OK)。
代码编辑
本节介绍与代码编辑器相关的已知问题。
键盘输入冻结 - Linux 上的“iBus”问题
Linux 上的 iBus 守护进程与 Android Studio 之间存在一些已知的交互问题。在某些情况下,IDE 会停止响应键盘输入或开始输入随机字符。此错误是由于 iBus 与 XLib + AWT 之间缺少同步而触发的,并且已向上游报告给 JetBrains 和 iBus。目前有三种解决此问题的方法
- 解决方法 1: 强制 iBus 进入同步模式。在启动 Android Studio 之前,在命令行中运行以下命令
$ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd
- 解决方法 2: 在 Android Studio 中禁用 iBus 输入。要仅为 Android Studio 禁用 iBus 输入,请在命令行中运行以下命令
此解决方法仅禁用 Android Studio 的输入法,不禁用您可能正在运行的任何其他应用的输入法。请注意,如果您在 Android Studio 运行时重启守护进程(例如,通过运行$ XMODIFIERS= ./bin/studio.sh
ibus-daemon -rd
),您将有效地禁用所有其他应用的输入法,并且还可能导致 Android Studio 的 JVM 发生段错误而崩溃。 - 解决方法 3: 仔细检查快捷键绑定,确保 下一个输入快捷键 (Next input shortcut) 未设置为 Control+Space,因为这也是 Android Studio 中的代码补全快捷键。Ubuntu 14.04 (Trusty) 将 Super+Space 作为默认快捷键,但可能仍然存在旧版本中的设置。要检查您的快捷键绑定,请在命令行中运行
ibus-setup
以打开 IBus 首选项窗口。在 键盘快捷键 (Keyboard Shortcuts) 下,检查 下一个输入法 (Next input method)。如果它设置为 Control+Space,请将其更改为 Super+Space 或您选择的其他快捷键。
项目配置
本节介绍与项目配置和 Gradle 同步相关的已知问题。
Gradle 同步失败:管道破裂
问题在于 Gradle 守护进程试图使用 IPv4 而不是 IPv6。
- 解决方法 1:在 Linux 上,将以下内容放入您的
~/.profile
或~/.bash_profile
中export _JAVA_OPTIONS="-Djava.net.preferIPv6Addresses=true"
- 解决方法 2:在 Android Studio 的 vmoptions 文件中,将
-Djava.net.preferIPv4Addresses=true
行更改为-Djava.net.preferIPv6Addresses=true
。有关更多信息,请参阅 网络 IPv6 用户指南 (Networking IPv6 User Guide)。
Gradle 同步或 SDK 管理器 (SDK Manager) 返回“对等方未经验证 (peer not authenticated)”错误
这些错误的根本原因是 $JAVA_HOME/jre/lib/certificates/cacerts
中缺少证书。要解决这些错误,请按以下步骤操作
- 如果您在使用代理,请尝试直接连接。如果直接连接有效,那么要通过代理连接,您可能需要使用
keytool
将代理服务器的证书添加到 cacerts 文件中。 - 重新安装受支持的、未修改的 JDK。存在一个影响 Ubuntu 用户的已知问题,导致
/etc/ssl/certs/java/cacerts
为空。要解决此问题,请在命令行中执行以下命令sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure
部署
本节介绍与将应用部署到连接设备相关的已知问题。
[仅限 Mac OS] 增量更新未应用,原因是 Gradle 文件监听在 /System/Volumes/Data
下保存的项目上存在问题
Gradle 问题 18149 会影响 Android Gradle 插件 7.0 及更高版本,因为它们需要 Gradle 7.0 及更高版本。从 Gradle 7.0 开始,文件监听默认启用。如果您在 Mac OS 上工作,并且您的项目保存在 /System/Volumes/Data
下,Gradle 文件监听将无法正确跟踪文件更改。这将导致构建系统看不到任何文件更改,因此不会更新 APK。增量部署代码将因此不执行任何操作,因为本地 APK 状态与设备上的状态相同。
要解决此问题,您应该将项目目录移动到您的用户目录,即 /Users/username
下。然后,构建系统将通过 Gradle 文件监听正确地收到文件更改通知,增量更改也将成功应用。
macOS High Sierra 上的 Android Emulator HAXM
macOS High Sierra (10.13) 上的 Android 模拟器需要 HAXM 6.2.1+ 以获得最佳兼容性和稳定性。然而,macOS 10.13 安装 HAXM 等内核扩展的过程更为复杂。您需要手动允许内核扩展本身按如下方式安装
- 首先,尝试从 SDK 管理器 (SDK Manager) 安装最新版本的 HAXM。
- 在 macOS 中,转到 系统偏好设置 (System Preferences) > 安全与隐私 (Security and Privacy)。
如果您看到警报称 来自开发者“Intel Corporation Apps”的系统软件已被阻止加载,请点击 允许 (Allow)
有关更多信息和解决方法,请参阅此 Apple 网页和问题 62395878。
应用更改
本节介绍与应用更改 (Apply Changes) 相关的已知问题。
新的应用名称未应用
如果您重命名您的应用并尝试应用该更改,更新后的名称可能不会反映出来。要解决此问题,请点击 运行 以重新部署您的应用并查看您的更改。
Android Runtime 中的问题抛出错误
如果您使用的是运行 Android 8.0 或 8.1 的设备,在尝试应用某些类型的更改时(特别是如果您使用 Kotlin),您可能会遇到“VERIFICATION_ERROR”消息。此消息是由 Android Runtime 的一个问题引起的,该问题已在 Android 9.0 及更高版本中修复。尽管此问题会导致“应用更改”失败,您仍然可以再次 运行 您的应用以查看您的更改。但是,我们建议您将设备升级到 Android 9.0 或更高版本。
调试和测试
本节介绍与调试和测试您的应用相关的已知问题。
从 Android Studio 运行 JUnit 测试时,类路径中缺少资源
如果您的 Java 模块中有特定的资源文件夹,那么从 IDE 运行测试时将找不到这些资源。从命令行使用 Gradle 运行测试将起作用。从 IDE 执行 Gradle check
任务也将起作用。有关更多详细信息,请参阅问题 64887。
出现此问题是因为 IntelliJ 13 要求类路径中只有一个文件夹。IntelliJ 的构建器会将所有资源复制到该构建文件夹中,但 Gradle 不会复制这些资源。
- 解决方法 1:从 IDE 运行 Gradle
check
任务,而不是运行单元测试。 - 解决方法 2:更新您的构建脚本以手动将资源复制到构建文件夹中。有关更多信息,请参阅评论 #13。
运行 JUnit 测试可能会编译代码两次
创建新项目时,模板 JUnit 配置可能会创建两个“启动前 (Before launch)”步骤:Make 和 Gradle 感知型 Make。此配置随后会传播到所有创建的 JUnit 运行配置。
- 要修复当前项目的问题,请点击 运行 (Run) > 编辑配置 (Edit Configurations) 并更改默认的 JUnit 配置,使其仅包含 Gradle 感知型 Make 步骤。
- 要修复所有未来项目的问题,请点击 文件 (File) > 关闭项目 (Close Project)。您应该会看到欢迎屏幕。然后点击 配置 (Configure) > 项目默认值 (Project Defaults) > 运行配置 (Run Configurations),并将 JUnit 配置更改为仅包含 Gradle 感知型 Make 步骤。
某些测试运行配置不起作用
并非所有右键点击测试方法时可用的运行配置都有效。具体来说,以下配置无效
- Gradle 运行配置(图标为 Gradle 徽标)不起作用。
- JUnit 运行配置(没有绿色 Android 图标)不适用于插桩测试,这些测试无法在本地 JVM 上运行。
调试原生代码时添加 Java 断点
当您的应用在原生代码中的断点处暂停时,自动 (Auto) 和 双重 (Dual) 调试器可能无法立即识别您设置的新 Java 断点。为避免此问题,请在开始调试会话之前或应用在 Java 断点处暂停时添加 Java 断点。有关更多信息,请参阅问题 229949。
退出原生调试器
当您使用 自动 (Auto) 或 双重 (Dual) 调试器调试 Java 和原生代码时,如果您 从 Java 代码步入原生函数(例如,调试器在调用原生函数的 Java 代码行处暂停执行,您点击 步入 (Step Into) )并且您想返回 Java 代码,请点击 恢复程序 (Resume Program)
(而不是 步出 (Step Out)
或 步过 (Step Over)
)。您的应用进程仍将暂停,因此请在 您的模块-java (your-module-java) 标签页中点击 恢复程序 (Resume Program)
以恢复它。有关更多信息,请参阅问题 224385。
原生调试器在加载库时挂起
升级到 Android Studio 4.2 及更高版本后首次使用原生调试器时,原生调试器在从 Android 设备加载库时可能会停止响应。此问题是一个顽固问题,即使您停止并重新启动调试器,它也会继续发生。要解决此问题,请删除 $USER/.lldb/module-cache/
处的 LLDB 缓存。
原生调试器崩溃并显示“调试器进程以退出代码 127 终止”
在基于 Linux 的平台上启动原生调试器时会出现此错误。它表示原生调试器所需的某个库未安装在本地系统上。缺失库的名称可能已打印在 idea.log
文件中。如果没有,您可以使用终端导航到 Android Studio 安装目录并执行 bin/lldb/bin/LLDBFrontend --version
命令行,以了解缺少哪些库。通常,缺失的库是 ncurses5
,因为一些最新的 Linux 发行版已经升级到 ncurses6
。
分析器
本节介绍分析器 (Profilers) 的已知问题。
原生内存分析器:应用启动期间无法进行分析
原生内存分析器目前在应用启动期间不可用。此选项将在即将发布的版本中提供。
作为解决方法,您可以使用 Perfetto 独立命令行分析器来捕获启动配置文件。
CPU 分析器中出现超时错误
当您选择 采样 Java 方法 (Sample Java Methods) 或 跟踪 Java 方法 (Trace Java Methods) 配置时,您可能会在 Android Studio CPU 分析器中遇到“录制停止失败 (Recording failed to stop)”错误。这些通常是超时错误,尤其是当您在 idea.log
文件中看到以下错误消息时
等待 ART 轨迹文件超时
超时错误往往对跟踪方法的影响大于采样方法,对较长录制的影响大于较短录制。作为临时解决方法,尝试较短的录制可能会有所帮助,以查看错误是否消失。
如果您在使用分析器时遇到超时问题,请提交错误,其中包含您的设备制造商/型号以及 idea.log
和 logcat 中的任何相关条目。
调试或分析时出现 ADB 异常
使用 Platform Tools 29.0.3 时,原生调试和 Android Studio 分析器可能无法正常工作,当您选择 帮助 (Help) > 显示日志 (Show Log) 时,您可能会在 idea.log
文件中看到“AdbCommandRejectedException”或“Failed to connect port”。将 Platform Tools 升级到 29.0.4 或更高版本可以解决这两个问题。
要升级 Platform Tools,请执行以下操作
- 通过点击 工具 (Tools) > SDK 管理器 (SDK Manager) 或点击工具栏中的 SDK 管理器 (SDK Manager)
,从 Android Studio 打开 SDK 管理器。
- 点击 Android SDK 平台工具 (Android SDK Platform-Tools) 旁边的复选框,使其显示一个勾号。左侧列中应出现一个下载图标
。
- 点击 应用 (Apply) 或 确定 (OK)。
插件导致构建输出窗口无法工作
使用 CMake 简单高亮器 (CMake simple highlighter) 插件会阻止内容显示在构建输出窗口中。构建会运行,并且构建输出标签页也会出现,但不会打印任何输出(问题 #204791544)。
安装顺序阻止启动
在安装旧版本之前安装新版本的 Android Studio 可能会阻止旧版本启动。例如,如果您首先安装 Android Studio 的 Canary 版,然后尝试安装并启动稳定版,稳定版可能无法启动。在这种情况下,您必须清除缓存才能启动稳定版(旧版)。在 macOS 上,要清除缓存,请删除 Library/ApplicationSupport/Google/AndroidStudioversion_number
目录。在 Windows 上,要清除缓存,请使用磁盘清理 (Disk Cleanup)。
Espresso 测试录制器 (Espresso Test Recorder) 不适用于 Compose 项目
Espresso 测试录制器 (Espresso Test Recorder) 不适用于包含 Compose 的项目。要为包含 Compose 的项目创建 UI 测试,请参阅测试您的 Compose 布局 (Testing your Compose layout)。
Logcat 快捷键与非英语键盘布局冲突
如果您使用的是非英语键盘布局,默认的 Logcat 键盘快捷键可能会与该布局冲突,导致您在 Android Studio 中编辑文本时无法输入某些字符。要解决此问题,请删除或重新映射冲突的 Logcat 键位映射。要在 Android Studio 中编辑 Logcat 键位映射,请转到 Android Studio > 设置 (Settings) > 键位映射 (Keymap) 并在键位映射列表中搜索 Logcat
。有关更多信息,请参阅问题 #263475910。
此问题将在 Android Studio Electric Eel Patch 1 中通过移除 Logcat 快捷键来解决。
Android Gradle 插件已知问题
本节介绍 Android Gradle 插件最新稳定版中存在的已知问题。
并非所有动态功能库依赖项都经过 lint 检查
当从应用模块运行 checkDependencies = true
的 lint 时,动态功能库依赖项不会被检查,除非它们也是应用依赖项(问题 #191977888)。作为解决方法,可以在这些库上运行 lint 任务。
使用回车字符命名的签名文件
JAR 签名(v1 方案)不支持包含回车字符的文件名(问题 #63885809)。
在构建时修改变体输出可能不起作用
使用 Variant API 操作变体输出在新插件中已损坏。它仍然适用于简单任务,例如在构建时更改 APK 名称,如下所示
// If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> variant.outputs.all { outputFileName = "${variant.name}-${variant.versionName}.apk" } }
然而,涉及访问 outputFile
对象的更复杂任务不再起作用。这是因为变体特定的任务不再在配置阶段创建。这导致插件无法提前知道其所有输出,但这也意味着更快的配置时间。
manifestOutputFile 不再可用
processManifest.manifestOutputFile()
方法不再可用,当您调用它时会收到以下错误
A problem occurred configuring project ':myapp'. Could not get unknown property 'manifestOutputFile' for task ':myapp:processDebugManifest' of type com.android.build.gradle.tasks.ProcessManifest.
您可以调用 processManifest.manifestOutputDirectory()
返回包含所有生成的清单的目录路径,而不是调用 manifestOutputFile()
获取每个变体的清单文件。然后,您可以找到一个清单并对其应用您的逻辑。下面的示例动态更改清单中的版本代码
android.applicationVariants.all { variant -> variant.outputs.all { output -> output.processManifest.doLast { // Stores the path to the maifest. String manifestPath = "$manifestOutputDirectory/AndroidManifest.xml" // Stores the contents of the manifest. def manifestContent = file(manifestPath).getText() // Changes the version code in the stored text. manifestContent = manifestContent.replace('android:versionCode="1"', String.format('android:versionCode="%s"', generatedCode)) // Overwrites the manifest with the new text. file(manifestPath).write(manifestContent) } } }
AGP 7.3.0 AIDL 支持和 Kotlin 1.7.x 的问题
在 Kotlin 1.7.x 中将 AGP 7.3.0 与 KAPT 一起使用会导致特定构建变体的 AIDL 源集被移除。您仍然可以使用其他 AIDL 源集,包括 main/
、构建类型、产品变种以及产品变种的组合。如果您需要使用特定于变体的 AIDL 源集,请继续使用 Kotlin 1.6.21。
已修复的已知问题
本节介绍最近版本中已修复的已知问题。如果您遇到任何这些问题,您应该将 Android Studio 更新到最新的稳定版或预览版。
在 Android Studio 2021.1.1 中修复
- 缺少 lint 输出:当 lint 任务为
UP-TO-DATE
时,不会将 lint 文本输出打印到stdout
(问题 #191897708)。已在 AGP 7.1.0-alpha05 中修复。 - 使用 Hilt 插件的应用项目进行单元测试时出现问题:单元测试类路径包含未插桩的应用类,这意味着 Hilt 在运行单元测试时不会插桩应用类来处理依赖注入(问题 #213534628)。已在 AGP 7.1.1 中修复。
在 Android Studio 2020.3.1 中修复
- Kotlin 项目中的 Lint 异常: 设置
checkDependencies = true
的 Kotlin 项目可能会遇到空指针异常或错误(问题 #158777858)。
在 Android Studio 4.2 中修复
- IDE 在 macOS Big Sur 上冻结: 当您打开对话框时,Android Studio 4.1 可能会冻结。
在 Android Studio 4.1 中修复
- 重启以应用来自 IDE 早期版本的内存设置: 更新 Android Studio 后,您需要重启 Android Studio 以应用从 IDE 早期版本迁移的任何内存设置。
- 默认不再生成包含自定义权限字符串的 Manifest 类: 如果您想生成该类,请设置
android.generateManifestClass = true
。
在 Android Studio 3.6 中修复
LineageOS 上的 APK 安装错误: 将您的应用部署到运行特定版本 LineageOS 或 CyanogenMod 的设备时,可能会失败并抛出
INSTALL_PARSE_FAILED_NOT_APK
异常。在 Android Studio 3.6 Beta 1 及更高版本中,当您将应用部署到 LineageOS 或 CyanogenMod 设备时,IDE 通过执行完整应用安装来处理此异常,这可能会导致部署时间更长。
在 Android Studio 3.5.2 中修复
- XML 代码样式损坏: 编辑 XML 代码时,当您从菜单栏中选择 代码 (Code) > 重新格式化代码 (Reformat Code) 时,IDE 应用了不正确的代码样式。
在 Android Studio 3.3.1 中修复
扫描基于 C++ 的项目时出现内存不足错误: 当 Gradle 扫描一个在同一驱动器上多个位置包含 C++ 代码的项目时,扫描会包含第一个公共目录下的所有目录。扫描大量目录和文件可能会导致内存不足错误。
有关此问题的更多信息,请阅读与此问题相关的错误。