No1:

No2:

在Android中单个dex文件所能够包含的最大方法数为65536,这包含Android FrameWork、依赖的jar包以及应用本身的代码中的所有方法。

No3:

使用multidex来解决方法数越界

apply plugin: \'com.android.application\'

android {

compileSdkVersion 22

buildToolsVersion "22.0.1"

defaultConfig {

applicationId "com.ryg.multidextest"

minSdkVersion 8

targetSdkVersion 22

versionCode 1

versionName "1.0"

// enable multidex support

multiDexEnabled true

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile(\'proguard-android.txt\'), \'proguard-rules.pro\'

}

}

}

afterEvaluate {

println "afterEvaluate"

tasks.matching {

it.name.startsWith(\'dex\')

}.each { dx ->

def listFile = project.rootDir.absolutePath + \'/app/maindexlist.txt\'

println "root dir:" + project.rootDir.absolutePath

println "dex task found: " + dx.name

if (dx.additionalParameters == null) {

dx.additionalParameters = []

}

dx.additionalParameters += \'--multi-dex\'

dx.additionalParameters += \'--main-dex-list=\' + listFile

dx.additionalParameters += \'--minimal-main-dex\'

}

}

dependencies {

compile fileTree(dir: \'libs\', include: [\'*.jar\'])

compile \'com.android.support:appcompat-v7:22.1.1\'

compile \'com.android.support:multidex:1.0.0\'

}

afterEvaluate区域是为了指定dex文件中包含哪些类,类名写在maindexlist.txt中

注意:multidex的jar包中的9个类必须也要打包到主dex中

代码支持

public class TestApplication extendsApplication {

@Overrideprotected voidattachBaseContext(Context base) {super.attachBaseContext(base);

MultiDex.install(this);

}

}

Multidex方法虽然很好地解决了方法数越界这个问题,但也会导致应用启动速度会降低,是因为应用启动时会加载额外的dex文件。

No4:

No5:

android开发技术探索,《android开发艺术探索》读书笔记(十三)--综合技术(示例代码)...相关推荐

  1. 读书笔记:编写高质量代码--web前端开发修炼之道(二:5章)

    读书笔记:编写高质量代码--web前端开发修炼之道 这本书看得断断续续,不连贯,笔记也是有些马虎了,想了解这本书内容的童鞋可以借鉴我的这篇笔记,希望对大家有帮助. 笔记有点长,所以分为一,二两个部分: ...

  2. android linearlayout属性大全,Android中LinearLayout布局的常用属性总结读书笔记

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 原CSDN博客已弃用,文章会逐渐迁移过来. 应朋友们反馈的Android基础薄弱的问题,决定出一套Android基础教程 ...

  3. 《爱的艺术》读书笔记作文3800字

    <爱的艺术>读书笔记作文3800字: 本书的封里是这么介绍作者的:"艾里希·弗洛姆(1900-1980),美国著名社会心理学家.精神分析学家和哲学家.弗洛姆的研究根植于弗洛伊德的 ...

  4. 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(上)

    索引: 一.SQL Server的体系结构 二.查询 三.表表达式 四.集合运算 五.透视.逆透视及分组 六.数据修改 七.事务和并发 八.可编程对象 一.SQL Server体系结构 1.1 数据库 ...

  5. 《JavaScript DOM 编程艺术》读书笔记

    <JavaScript DOM 编程艺术>读书笔记--其一 第二章 1.Javascript代码编写方式: (1)将JavaScript代码放在文档<head>标签中的< ...

  6. 《魏斯曼演讲圣经说的艺术》读书笔记PPT模板

    模板介绍 <魏斯曼演讲圣经说的艺术>读书笔记PPT模板.一套读书笔记幻灯片模板,内含灰色多种配色,风格设计,动态播放效果,精美实用. 希望下面这份精美的PPT模板能给你带来帮助,温馨提示: ...

  7. 《演讲之禅:一位技术演讲家的自白》读书笔记

    <演讲之禅:一位技术演讲家的自白>读书笔记 第1章 其实我看不到裸露的你 要知道你怎么对待错误,听众就会怎样对待错误: 你可以泰然处之,大家也就一笑而过:如果你大惊失色,大家同样会将注意力 ...

  8. 《阿里巴巴Android开发手册》v1.0.1更新,优化部分内容和示例代码

    摘要: 春节余味尚未消,我们为移动开发者准备了一份迟到的新年礼物--<阿里巴巴Android开发手册>,继<阿里巴巴Java开发手册>之后,阿里巴巴开发规范家族又添一丁,「阿里 ...

  9. 《开发故事思维》思维导图读书笔记,

    开发故事思维也叫开发故事创意,由英文developing story ideas翻译过来,由美国作家迈克尔拉毕哥创作,本书在豆瓣评分有8.3,非常值得一读.每个人都有令人动听的故事可以讲,但如何把故事 ...

  10. android自定义push通知_android通过自定义toast实现悬浮通知效果的示例代码

    android通过toast实现悬浮通知效果,如图: 实现的功能: 自定义悬浮弹窗: 点击其他地方该布局不受影响: 可自定义显示时间: 可以设置点击事件: 代码如下: import android.c ...

最新文章

  1. zend studio配置调试(Xdebug方式)
  2. 汇编:OF溢出标志位
  3. 【渝粤题库】广东开放大学 标准的研制与编制 形成性考核
  4. C++ 指针函数和函数指针
  5. 04.卷积神经网络 W3.目标检测
  6. php里面没有mssql,为什么没有正确使用PHP / MSSQL的日期/时间?
  7. 斯坦福 CS228 概率图模型中文讲义 一、引言
  8. 【kafka】kafkaProducer 拉取元数据的流程
  9. mysql sql时间比较_mysql和sql时间 字段比较大小的问题
  10. 【转】opengl的一些小问题
  11. LINUX中获得cpu名称
  12. 页面回发(PostBack)后,滚动条位置保持不变
  13. ffmpeg API变更 2009-03-01—— 2017-05-09变更
  14. python编写web漏洞扫描器_Python脚本实现Web漏洞扫描工具
  15. 知识图谱构建技术总述
  16. 转:getParameter、getParameterValues、getParameterMap用法详解
  17. 在线字节转换工具G,M,Byte
  18. java中的Int范围
  19. 历史文化名城盛开数字化之花
  20. 基于ESP8266的太空人智能时钟

热门文章

  1. 第 5-5 课:线程安全——synchronized 和 ReentrantLock + 面试题
  2. Dubbo 面试题汇总(附答案)
  3. Redis中的键值过期操作
  4. 图片人脸检测——OpenCV版(二)
  5. 配置设备作为DHCP 服务器(基于接口地址池)
  6. redis启动没反应_Promethues如何针对Redis进行监控
  7. python分支结构说课_Python_3.8平台上的分支结构(模块.类.函数)_11
  8. 计算机二级excel数据有效性,原来Excel数据有效性还可以这样做——制作二级下拉菜单...
  9. linux启动keepalived服务,llinux企业常用服务---HA+keepalived双机热备
  10. 番茄花园win11 32位官方纯净版镜像v2021.07