安卓开发——Android Studio常见报错与解决方法

1. No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-android

这个错误是由于较新版本的NDK的./toolchains目录中没有arm-linux-androideabi文件,解决办法是从旧的NDK版本里面把相关的lib复制到要使用的NDK的版本里面,重新编译运行。

打开Andrid SDK配置界面:

  1. 下载旧版本的NDK(NDK 21是包含了需要的LIB,新测可行)
  2. 然后打开SDK所在的目录:

把NDK 21里面的toolchains目录下除了llvm的所有文件移动到NDk 25 toolchains里面,重新编译运行。

2. Please select Android SDK

Android Studio开发环境界面上边用于编译的小锤子旁边的app上打了一个小红叉(×),无论如何也点击不了运行,同时也无法选择真机设备。点击File->Project Structure就会出现报错。

解决方法:

  1. 点Android SDk,然后点Edit
  1. 进行下面这个界面,对着前面的勾点一下(点的时候没有任何反应),之后选择下一步,完成后就可以执行了。

3. Unsupported Java. Your build is currently configured to use Java 17.0.6 and Gradle xxx

版本不匹配,Gradle 版本和 Java 版本之间的对应关系并不是直接的一对一关系。通常情况下,Gradle 版本并不限制特定的 Java 版本,但是 Gradle 和 Java 需要保持兼容性。

Android Studio 和 Gradle 支持的 Java 版本与操作系统和所安装的 JDK 版本有关。以下是一些常见的对应关系:

  • 对于较新的 Android Studio 和 Gradle 版本,可以使用较新的 JDK 版本(比如 Java 11、Java 12、Java 13、Java 14、Java 15、Java 16、Java 17 等)。建议使用最新的 LTS(Long-Term Support)版本,比如 Java 11 或 Java 17。

如果项目或团队使用较旧的 Gradle 版本,可能需要使用较旧版本的 JDK。例如,某些旧版本的 Gradle 可能对较新的 JDK 不完全兼容,因此可能需要使用较旧的 JDK 版本,比如 Java 8。

解决方法:

找到Gradle的设置界面,如果没有旧版本的JDK,就选择下载,如果已下载过旧的版本,选择旧版的NDK。

4. Android Studio Could not initialize class org.codehaus.groovy.runtime.InvokerHelper

Android studio 使用gradlew命令打包时,出现Could not initialize class org.codehaus.groovy.runtime.InvokerHelper错误。

解决方法:

  • 安装Java SDK版本: 14或更高版本。
  • 在gradle-wrapper.properties请使用级版本6.3或以上:

distributionUrl=https://services.gradle.org/distributions/gradle-6.3-all.zip

5. Out of memory. Java heap space

报错信息:

  • What went wrong:
    Out of memory. Java heap space

Possible solution:

  • Check the JVM memory arguments defined for the gradle process in:
    gradle.properties in project root directory
    gradle.properties in GRADLE_USER_HOME directory

解决方法:

把512改成1024或者2048就,重新编译运行

相关推荐
wVelpro2 小时前
如何在Pycharm 2025.3 版本实现虚拟环境“Make available to all projects”
linux·ide·pycharm
ujainu3 小时前
告别杂乱!Flutter + OpenHarmony 鸿蒙记事本的标签与分类管理(三)
android·flutter·openharmony
常利兵4 小时前
Android内存泄漏:成因剖析与高效排查实战指南
android
·云扬·4 小时前
MySQL 8.0 Redo Log 归档与禁用实战指南
android·数据库·mysql
野生技术架构师4 小时前
SQL语句性能优化分析及解决方案
android·sql·性能优化
doupoa5 小时前
内存指针是什么?为什么指针还要有偏移量?
android·c++
jun_bai5 小时前
VSCode使用
ide·vscode·编辑器
非凡ghost6 小时前
PowerDirector安卓版(威力导演安卓版)
android·windows·学习·软件需求
独行soc6 小时前
2026年渗透测试面试题总结-19(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
猫头虎6 小时前
OpenClaw-VSCode:在 VS Code 里玩转 OpenClaw,远程管理+SSH 双剑合璧
ide·vscode·开源·ssh·github·aigc·ai编程