Android Studio 常见报错

此文章用以记录项目开发中遇到的一些比较常见的bug,以及解决方法,以便以后再次遇到能够有据可查。 

1、将一个项目复制,改名之后,重新打开编译错误,报了如下错误:

com.android.builder.internal.aapt.AaptException: Failed to crunch file

经过搜索后发现原来是在Windows中不允许存在比较长的路径名称所造成的,路径长度必须低于240个字符,如果有那个文件的绝对路径长度超过了240个字符,则会报次错误,编译报错。随意把路径改短后,Android Studio顺利编译通过。

2. 项目打包编译报错:

java.lang.UnsatisfiedLinkError:dlopen failed: /data/app/***.so:has text relocations

原因:在android 开发中调用.so文件,在android 7.0版本中报了上面的错误,经过反向查证,是so文件的编译版本sdk过低了,应该在7.0的sdk以下去编译。

解决办法:将项目目标(targetSdkVersion)SDK版本降低。(我是之前将SDK从18调到了27,故报此错),所以将我自己项目中的SDK27降回了18,重新编译就OK了。

3、Thread already started

进程已经开启,再次开启此进程就会报错

解决办法: new Thread(进程名).start();

4、ANR抓取Log步骤:

adb logcat -d > abc.log 将Log导入到abc.log文件中,默认路径为:C:\Users\(计算机用户名)中;

抓取anr Log 不要过滤,要按确定之后得到的堆信息。

不用root 也可以访问到文件 cat /data/anr/tra

### 解决 Android Studio 常见报错问题 #### 一. 无法获取 com.android.tools.build:gradle 版本 当遇到 `com.android.tools.build:gradle` 的特定版本无法下载的情况时,这通常是因为本地仓库或网络连接存在问题。建议尝试更新到最新稳定版的 Gradle 插件,并确保项目能够访问 Google Maven 或 JCenter 这样的公共库[^2]。 ```groovy // build.gradle (Project level) buildscript { repositories { google() // 使用Google官方Maven仓库 mavenCentral() } } ``` #### 二. AppCompatActivity 报错以及所有包都显示错误并提示设置JDK路径 此类问题是由于缺少有效的Java Development Kit(JDK)配置引起的。可以通过以下方式快速修复: 1. 打开 File -> Project Structure... 菜单选项; 2. 在左侧列表中选择 "SDK Location", 然后点击右侧的 "+" 号来安装新的 JDK, 或者指定已有的 JDK 安装位置[^3]; #### 三. SDK 和支持库版本不匹配导致的编译失败 如果发现构建过程因为 API Level 不兼容而中断,则应该同步调整项目的 compileSdkVersion 和 targetSdkVersion 属性至相同级别,并相应地更改依赖项中的 support 库版本号。对于旧项目来说,保持一致性和及时升级是非常重要的[^4]。 ```groovy android { ... compileSdkVersion 28 defaultConfig { minSdkVersion 19 targetSdkVersion 28 } } dependencies { implementation 'com.android.support:appcompat-v7:28.0.0' } ``` #### 四. SQLite 数据库操作异常引发的应用崩溃 针对数据库创建语句语法有误所造成的运行期异常,应当仔细检查 SQL 文字串里的表名拼写是否正确、字段定义是否有遗漏等问题。可以借助日志输出功能定位具体的执行点位,从而更精准地排查潜在缺陷。 ```sql CREATE TABLE notes ( id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT NOT NULL, content TEXT); ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WannaYoo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值