最近在用android studio开发app的过程中,总是遇到类似“error:failed linking references"的报错,让人很是苦恼,心态差点被搞崩,经过上网各种查阅资料,各种逛论坛,求助各位大神以及自己的一些思考,耗时居多,终于解决了这个困扰我很久的问题,甚是开心。现来分享自己的一些经验,希望能帮到各位和我有同样苦恼的同学:
话不多说,开始摆出我的问题:
这是在我用android studio1实现登陆、注册、并连接SQLite数据库进行增删改查过程中遇到的问题,由于参考了https://blog.csdn.net/midnight_time/article/details/80792255
【Android】实现登录、注册、数据库操作(极简洁)的有关内容,在如下代码:
(Code.java)
//生成随机的四位验证码图片
//画验证码
for (int i = 0; i < code.length(); i++) {
randomTextStyle(paint);
randomPadding();
c.drawText(code.charAt(i) + “”, padding_left, padding_top, paint);
}
//画线条
for (int i = 0; i < line_number; i++) {
drawLine(c, paint);
}

    c.save( Canvas.ALL_SAVE_FLAG );//保存c.restore();//return bp;

其中c.save( Canvas.ALL_SAVE_FLAG );//保存极易出现Bug:save() in Canvas cannot be applied to (int),于是我按照博主的建议在build.gradle(Module)中将sdk改为27版本

紧接着,我就高高兴地点了Run按钮,等待着它的成功运行,紧接着就出现了“error:failed linking references”的报错,让人很是郁闷,于是我又在网上找各种解决办法,之后又相继改了各种地方的参数,例如compileSdkVersion、minSdkVersion、androidTestImplementation等、但无一例外全部失败了,依旧是报同样的错误。这时我的心态已经崩了,也不关注这个项目本身了。一心一意无查找资料找出出现这个错误的原因,而不再仅仅只限于这个项目本身了。最后,终于发现,出现这个错误的根本原因就是因为gradle和sdk版本号的问题,简单点来说就是build.gradle(Project)、build.gradle(Module)、gradle-wrapper.properties这三个文件中相关的部分参数出现了问题,必须找到一个能个成功运行的依赖版本,参数全部配置正确,而不能只改某一个地方,这样永远无法解决这个报错,我之前就是犯了这个错误,每次只改一个地方,而不是整体配置。这个问题是无法避免的,因为谷歌无时无刻都在进行sdk版本和gradle版本的更新,新的版本出来了,旧的版本中的部分功能自然无法使用了。
好了,问题根源找到了,接下来就是要完全解决这个问题了
参考了博主的依赖版本配置,最后终于解决了这个报错。
下面是博主的gradle版本和sdk版本配置:



这些就是我运行成功时我所说的那三个文件的截图,请认真核对每一个地方,不能有一点错,否则还是会报错,对了,改为这种依赖版本后,包的导入语句也应变成相应的“import android.support.v7.app.AppCompatActivity”;
好了,问题终于解决了!这里也给大家看看我之前的版本(这种依赖版本也是正确的,可以成功运行的,并且还是较新的版本,因为之前在项目中为了达到生成随机验证码图片的目的,使用了部分函数,需要我自降版本号,由28降到了27)



这时对应的包导入语句也应相应的变成
“import androidx.appcompat.app.AppCompatActivity;”
这里顺便还补充一种情况,也是我之前很多次遇到过的一种报错,可能有很多种不同的报错形式,这里不一一列出来,但具体原因都是一样的,主要是因为在新版本中调用了较旧版本中的方法之类的,版本不兼容,导致报错。
具体的解决方法如下:
在如下所示的文件中:
加上两条如下的语句:
android.useAndroidX=true
android.enableJetifier=true代表兼容老版本
这样问题就可以得到解决了。
总结:gradle版本号和sdk版本号非常重要,在用Android Studio开发app的过程中一定一定要重视这部分,也就是那三个文件的内容,这是非常重要的一步,是成功与否的前提。有一套能够成功运行的gradle依赖版本配置,这点是很重要的!!!
好了,这次的的分享就到这里了!!!
希望对各位在成为IT大佬的过程中遇到的问题能有一点儿小帮助

[Android Studio]报错error:failed linking references的解决方案以及有关gradle和sdk版本号的思考相关推荐

  1. android studio报错Error:Project with path 'XXXX' could not be found解决办法

    刚从服务器上剪下来的工程编译死活报 project with path '... ' could not be found in project ' app' 这个错, 找不到依赖库,可是检查工程里面 ...

  2. android studio报错 ERROR: Cause: executing external native build for cmake

    最近在使用android studio编辑项目的时候,出现 "ERROR: Cause: executing external native build for cmake"的报错 ...

  3. 打开Android Studio报错“Error running ***: Please select Android SDK”

    今天打开Android Studio编译项目正常,但在执行Run app的时候莫名其妙弹出配置对话框,一看SDK配置没什么问题,就直接单击"Run"按钮,谁料下面的消息窗口直接提示 ...

  4. Android Studio报错--Error: Library projects cannot set applicationId. applicationId is set to ...

    今天下午在导入一个Android Studio 工程时,发生了这样的错误: Error: Library projects cannot set applicationId. applicationI ...

  5. 解决 Android resource linking failed, error: failed linking references.

    问题描述 Android Studio 4.0.1 在 app/build.gradle 中声明使用 appcompat-v7,编译时报如下错误: Android resource linking f ...

  6. Android Studio报错:E/EGL_emulation: tid 3197: eglSurfaceAttrib(1199): error 0x3009 (EGL_BAD_MATCH)

    @[toc](Android Studio报错:E/EGL_emulation: tid 3197: eglSurfaceAttrib(1199): error 0x3009 (EGL_BAD_MAT ...

  7. 升级Android Studio 导致的 `Error:Failed to notify project evaluation listener.`解决办法

    最近升级Android Studio和sdk后, gradle同步项目时忽然报错, Error:Failed to notify project evaluation listener.截图如下, 更 ...

  8. error: failed linking references

    今天重启了一下项目,突然编译不通过,报的错误是 error: failed linking references.org.gradle.api.tasks.TaskExecutionException ...

  9. ReactNative打Release生产包报错error: failed parsing overlays

    ReactNative打Release生产包报错error: failed parsing overlays 一,生成静态JS Bundle文件 在项目根目录下执行以下命令: react-native ...

最新文章

  1. kali扫描内网ip_来,我们聊聊内网渗透!
  2. 浮点型数据2字节_C语言进阶之路:数据类型 - 整型、字符型和浮点型的扩展!...
  3. 阻塞(Block)和非阻塞(Non-Block)
  4. c语言 单片机模拟,【51单片机】普通I/O口模拟SPI口C语言程序
  5. 转:一篇很全面的freemarker教程
  6. stm32的ISP下载
  7. 谷歌地图 街景 api_Google使街景在地图中更加突出
  8. 北大青鸟python学费_北大青鸟学费贵吗,北大青鸟学费标准_北大青鸟综合校区为您解答...
  9. 前端工作中碰到的一些小问题总结
  10. 输出数字矩阵并把最后变为PUM
  11. iOS-App Logo和闪屏图尺寸
  12. Android文件存储编程实验,Android编程中File文件常见存储与读取操作demo示例
  13. spring mvc 响应处理post请求和get请求 测试
  14. 基于RFM模型的用户价值分析——PythonTableau
  15. 期刊论文发表的格式要求是什么
  16. PyTorch之—可视化(Visdom/TensorboardX)
  17. 高级语言程序设计(实验四)
  18. 虚拟机架设传世服务器,大话西游2特色版虚拟机镜像一键服务端+启动教程+物品ID+GM设置方法+数据库工具等...
  19. 企业级 Selenium 刷 其他平台 博客访问(学习使用 )
  20. thinkpad x12018换固态_【求助】ThinkPad X1Carbon 更换ssd - 笔记本电脑(Notebook)版 - 北大未名BBS...

热门文章

  1. win10电脑开机出现“Error code:0xc000014c”的解决
  2. pythontk中text设滚动条_Tkinter中的滚动条在文本widg中
  3. pinctrl子系统之二
  4. 一级域名生成二级域名工具-免费域名生成抓取工具
  5. 虚拟化技术之VMware Workstation教程(二)
  6. forth day--装饰器、迭代器、生成器
  7. java转换tiff_Java PDF转换Tiff
  8. centos7 通过cephadm部署ceph octopus版本
  9. 基于mybatis-plus的代码自动生成-完美版
  10. proxmox 下载-安装-基本配置