1.什么是64K方法引用的限制 65536(64K)是单个dex(Dalvik Executable)字节码文件的可引用的方法数的最大数,包括Android framework.应用的library和自己的方法.解决这个限制的方法就是使Apk编译创建和使用多个dex字节码文件在一个Apk文件中. 2.配置工程可以multidex Android5.0之前的multidex设置 Android5.0(API 21)之前的版本使用Dalvik runtime虚拟机执行App代码,默认情况下,Dalv…
//在app/build.gradle android { compileSdkVersion buildToolsVersion "24.0.1" defaultConfig { ... minSdkVersion targetSdkVersion ... // 设置支持multidex multiDexEnabled true } ... } dependencies { compile 'com.android.support:multidex:1.0.1' } 在applica…
http://my.oschina.net/gabriel1215/blog/602608 目录[-] 使用MultiDex支持库 注意事项 结论 如果你是一个android开发者,你至少听说过的Dalvik的蛋疼的64K方法限制.概括地说,在一个DEX文件,你可以调用很多的方法,但你只能调用它们最前面的65,536个 ,因为这是在方法调用集合中的所有的空间了.如果你的源代码和狂拽炫酷叼炸天的三方库中方法超过了这个限制.看这篇文章就对了. UNEXPECTED TOP-LEVEL EXCEPTI…
作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language-features 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 深入理解Java 8 Lambda(语言篇--lambda,方法引用,目标类型和默认方法) 深入理解Java 8 Lambda(类库篇--Streams API,Collector和并行) 深入理解Java 8 Lambda(原理篇…
以下内容转自: 作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language-features 本文谢绝转载,如需转载需征得作者本人同意,谢谢. -------------------------------------内容分割线--------------------------------------------------------- 关于 本文是深入…
R.jar丢失原因: a:eclipse指向的adk路径有中文,或者是workspace路径有中文 b:xml文件里有错误或者引用的资源不存在 c:xml或者drawable下资源文件不能够有大写字母或者纯数字 d:eclipse或者adt版本号有问题.adt19常常出现bug. e:项目sdk的版本号太低或者不正确. f:项目编码格式不正确(常出如今导入项目的编码格式跟eclipse设置的编码格式不一致时候). 几种解决的方法: a:Eclipse菜单条--Project.点击Build Au…
以下是我再使用抽象工厂+反射重构机房时,在Factoy中出现了以下一个问题: 去网上查了一下资料,发现这是一个非常普遍的问题,它出现的原因主要有两种: 第一种: 载入DLL路径错误.解决的方法是调整D层生成DLL的路径到UI的bin目录中. 例如以下图: 反射的一个原则是:一切皆以UI层的bin目录中的dll名称为中心.说白一点,dll就是一个类库.我理解的反射.就是一串拼接的字符串,组成要实例化的类的名字.使用反射载入类时,默认是从UI层中的bin中找的,所以要在UI的bin目录下生成D层类的…
解决NSTimer循环引用Retain Cycle问题 iOS开发中以下的情况会产生循环引用 block delegate NSTimer 循环引用导致一些对象无法销毁,一定的情况下会对我们横须造成影响,特别是我们要在dealloc中释放一些资源额时候,本篇主要解决NSTimer引起的循环引用问题. 问题分析 主要由于NSTimer对象和调用NSTimer的视图控制器对象相互强引用了,其中NSTimer对视图控制器的引用发生在最后一个参数reapets为YES的时候,因为需要重复执行操作,所以需…
本文介绍了Java SE 8中新引入的lambda语言特性以及这些特性背后的设计思想.这些特性包括: lambda表达式(又被成为"闭包"或"匿名方法") 方法引用和构造方法引用 扩展的目标类型和类型推导 接口中的默认方法和静态方法 本文是对 Brian Goetz 的 State of the Lambda 一文的翻译. 背景 Java是一门面向对象编程语言.面向对象编程语言和函数式编程语言中的基本元素(Basic Values)都可以动态封装程序行为:面向对象编…
前言: 好久没写文章了,最近先是重构IT恋.又重写IT恋中. Sagit框架也不断的更新,调整,现在感觉已完美了了相当的多. 今天不写教程,先简单分享一下技术内容. 1:见Block必有:#define WeakSelf __weak typeof(self) this = self; 故事要从这这里说起: 当初番完这代码后,发现到处都有这个鬼东西,然后就去百度了一下,然后大意是为了: 解决双向引用导致的内存无法释放问题 简单的表述如下: self 强引用指向=>block: block 也强引…