android常犯错误记录(二)
检查 minSdkVersion什么的是不是和你依赖的包一样,它上面也有个小提示,显示本地的11,依赖的为15,那就改成15好了,重新build好了
ClassNotFoundException异常
Failed to resolve:xxx错误
一开始报 already disposed module: XXX的错误,然后刷新一下,后面的xxx就变一下,反正就是already disposed module,然后百度,在设置里点击 invalidate caches/restart ,restart一下,接着就 failed to resolve:xxx了,这下就清楚了
如图,把第一行加上就ok了
Gradle sync failed: Unable to delete old javaCompile action 这个错误是可能是你的 retrolambda版本不对,调整你的版本,我是这么解决的
NoSuchFieldError no static field x of type i in class lcom/app r$id or its superclasses,错误如下图
原因就是新加了一个自定义控件照成的,一开始还以为是报名资源命名什么起冲突了,然后发现不是,后来引用的自定义控件的xml文件中的最外层布局上面添加,还是不行,然后发现主工程还有一个一样的布局,坑爹了,删了就好了
今天又被吭了一把,真想骂娘的,我想用过android studio的人肯定都已经骂过了,太吭了,吭逼
错误:Gradle DSL method not found compile()
还是想吐槽一下,报了这么多错,还带三个错误链接,有什么叼用?垃圾,气死我了,吐槽完了,骂完了,负能量没了就好好百度一下了
发现一篇博客,参考后解决了,也是奇葩
参考地址:http://blog.csdn.net/songtao542/article/details/51469870
也是感谢这位大兄弟,这么奇葩的问题也能找到,解决方法就是 dependencies { }中的所有 compile 语句必须换行书写,不可以两个 compile 语句在一行里
本来我的是换行的,导包的时候自动给我缩进了,也不知道怎么就缩进了,感觉也没什么,所以没去管,没想到问题就出现在这里
FileNotFoundException EISDIR Failed to ensure directory cache
如图为报错代码和日志,造成的原因是 RandomAccessFile 对文件操作,而因为移植问题之前的参数为空,导致创建的文件是空字符串文件,无法创建,所以直接操作文件夹了,导致报错,除此之外还有个需要注意的
地址用url对象
DexArchiveMergerException
Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
这个异常好像我碰到两次了,不过还是搞了我一会,几下笔记,我的gradle是3.1编译的,合并失败,一开始以为方法超限了,后来想想不可能,因为代码量不是很大,然后就想到引用了第三方的 lib 后出现的,然后开始找什么原因,因为我的引用版本一般都是统一的,
所以一般不会出现合并失败的错误,都是27.0.0
然后我就发现不对的地方了,我的一个gradle版本不是一样的
所以,把 .+改成一样的,这样就不会出现合并失败的错误了,改成一样的版本立马运行成功了,有的时候或许你引用了gradle库起冲突,这个时候可以排除,先把这个引用注释一下运行看看是否还是会冲突,如果没有冲突了表面就是这个gradle存在冲突,那么只能去
下载这个引用的源码了,把源码的版本改成一样的,直接导入到项目中
Error:Unable to load class 'org.gradle.api.internal.component.Usage
就是把下面的版本号修改成0.5.0
resource drawable style aka not found
这个错误很是奇葩遇到到时候,因为这个 资源文件和属性都是存在的,而且文件反复检查没有丝毫问题,这个也是以前就好的,查看log历史版本,都没有动过,看着android studio这个错误提示真是让我很蛋疼
后来我重命名,删了在建,重启,clear,都没效果,后来我把所有gradle版本都换了一个版本编译,结果真正的错误来了,这才来正主,我真是醉了,然后就是很简单的解决了
notFoundException Resource ID #oxfffffe6c
这个是适配器里面 BaseMultiItemQuickAdapter 少写了一个type导致的,坚持你的数据源,看下type少了哪个
android.app.RemoteServiceException: Bad notification for startForeground: java.lang.RuntimeException: invalid channel for service notification: Notification(channel=null pri=0 contentView=null vibrate=null sound=null defaults=0x0 flags=0x40 color=0x00000000 vis=PRIVATE)
startForeground 8.1系统操作的时候报错,然后添加了处理后是这样的
我以为可以了,没想到还是太年轻了,我看着很多方案都是这样处理的,没毛病,结果还是差了一招半式,name不能为 “”,涨知识了,一口老血就噗了出来,难怪很多人说解决方案如下,别问我为什么
android常犯错误记录(二)的更多相关文章
- android常犯错误记录
错误:Error:Error: Found item Attr/border_width more than one time 这个容易,属性相同了,按照提示查询一下找出来删了就行了,注意大小写很容易 ...
- android常犯错误记录(三)
java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionVie ...
- android常犯错误记录(一)
错误:Error:Error: Found item Attr/border_width more than one time 这个容易,属性相同了,按照提示查询一下找出来删了就行了,注意大小写很容易 ...
- scanf()常犯错误
------------------------------------------------------------------------ <> 本意:接收字符串. 写成代码:voi ...
- Python 新手常犯错误
Python 新手常犯错误(第二部分) 转发自:http://blog.jobbole.com/43826/ 作用域 在这篇文章里,我们来关注作用域在Python被误用的地方.通常,当我们定义了一个全 ...
- Python开发最常犯错误总结10种
不管是在学习还是工作过程中,人都会犯错.虽然Python的语法简单.灵活,但也一样存在一些不小的坑,一不小心,初学者和资深Python程序员都有可能会栽跟头.本文是Toptal网站的程序员梳理的10大 ...
- Python 新手常犯错误(第一部分)
转载自:http://blog.jobbole.com/42706/ 在之前几个月里,我教一些不了解Python的孩子来慢慢熟悉这门语言.渐渐地,我发现了一些几乎所有Python初学者都会犯的错误,所 ...
- Python 新手常犯错误(第一部分)转载
觉得这篇文章针对python的默认参数写的不错,翻译的也不错,故转载下. 原文链接: Amir Rachum 翻译: 伯乐在线- 伯乐在线读者译文链接: http://blog.jobbole.c ...
- Android遇到的错误记录
解决小米手机无法收到开机广播的问题 http://blog.csdn.net/ksr12333/article/details/16116627 怎样在Android Studio中打开DDMS窗口? ...
随机推荐
- JavaScript基础系列
JavaScript基础系列 JavaScript是一种基于对象和事件驱动的客户端脚本语言. JavaScript的注释 // 单行 /**/ 多行注释 JavaScript变量,函数名和操作符都是区 ...
- [Swift]LeetCode880. 索引处的解码字符串 | Decoded String at Index
An encoded string S is given. To find and write the decodedstring to a tape, the encoded string is ...
- [Swift]LeetCode956. 最高的广告牌 | Tallest Billboard
You are installing a billboard and want it to have the largest height. The billboard will have two ...
- linux入门--Linux和UNIX的关系及区别
UNIX 与 Linux 之间的关系是一个很有意思的话题.在目前主流的服务器端操作系统中,UNIX 诞生于 20 世纪 60 年代末,Windows 诞生于 20 世纪 80 年代中期,Linux 诞 ...
- 侯哥的Python分享
侯哥语录 我曾经是一个职业教育者,现在是一个自由开发者.我希望我的分享可以和更多人一起进步.分享一段我喜欢的话给大家:"我所理解的自由不是想干什么就干什么,而是想不干什么就不干什么.当你还没 ...
- NDK开发入门终极教程
0 前言 同NDK技术的渊源始于3年前,使用so文件的时候了解到NDK技术,并且C语言一直是强项,就鼓捣起NDK开发.在AndroidStduio还没推广的年代,基于eclipse搭建NDK开发环境需 ...
- PHP 扩展管理
一直对 PHP 扩展了解的似是而非,每次安装扩展都要百度教程,很容易出现各种错误.所幸整理下管理扩展的所有操作,方便日后操作. 查看已加载的扩展 输出 phpinfo(): 使用 get_loaded ...
- Qt之QComboBox定制
说起下拉框,想必大家都比较熟悉,在我们注册一些网站的时候,会出现大量的地区数据供我们选择,这个时候出现的就是下拉框列表,再比如字体选择的时候也是使用的下拉框,如图1所示.下拉框到处可见,作为一个图形库 ...
- nginx替换响应头(重点:如何在替换时加上if判断)
在实现微信小程序内嵌非业务域名时,通过nginx做镜像网站绕过小程序业务域名检测,但有一些表单页面提交后会返回一个302状态,由响应头Location的值决定提交成功后的跳转地址.那么问题来了,这个地 ...
- Java 多线程(三)—— 线程的生命周期及方法
这篇博客介绍线程的生命周期. 线程是一个动态执行的过程,它也有从创建到死亡的过程. 线程的几种状态 在 Thread 类中,有一个枚举内部类: 上面的信息以图片表示如下: 第一张图: 第二张图:把等待 ...