Android深入浅出系列课程---Lesson15LLY110602_Dalvik虚拟机概述
大家好,上一讲我们介绍了Handler-不可缺少的异步,这一讲我们将进入Dalvik虚拟机概述.
课程目标:
概念性的知道Dalvik虚拟机基于JVM的改进及其对移动设备的好处:
1)dex file format
2)Zygote shared lib and heap
3)Register-based ISA
4)Trace-Granularity JIT
知道apk的结构知道 class, apk,dex和odex文件的关系,及转换工具,存放位置
重点难点:
理解Dalvik虚拟机基于JVM的改进及其目的
知道应用文件apk和dex转换的过程和关系
考核目标:
Dalvik VM之所以能优化JVM,各项措施是基于啥前提或假设?啥么情况下得不到想要的优化效果?(Jeopardize)
课后练习:
解压缩一个apk文件,观察其结构
dexdump获取dex文件信息(有余力有兴趣)
观看2008Google IO Dalvik VM和2010Google IO Dalvik JIT的视屏
阅读android/dalvik/docs目录下的文档
Dalvik基于JVM的改进
1.几个class变为一个dex,constant pool,省内存
2.Zygote,copy-on-write shared(很少写),省内存&快启动
3.基于寄存器的bytecode,省指令,省CPU,省电
4.Trace-based JIT, 省内存,省CPU,省电
敢问Dex在何方?如何生成?
dexer: dx jar/class to dex在Eclipse插件中,包装在apk中
安装apk时,dexopt解压apk获得dex文件,存于dalvik-cache中,dexopt也可从apk或dex生成odex,存放于apk或jar文件同目录下
本讲对Dalvik虚拟机概述介绍,下一讲将进入AsyncTask异步任务,内容预告:AFF110606_AsyncTask异步任务,敬请期待。
特别推荐新课程:Android开发高端课程
http://www.mobidever.com/forum.php?mod=viewthread&tid=2098
本课视频地址:http://www.tudou.com/programs/view/eMFpniJRUJY/ (土豆网)
课程下载地址:http://www.verycd.com/topics/2900036/ (VeryCD电驴)
作者博客:http://www.mobidever.com/forum.php (Sundy-Android开发联盟)
Android深入浅出系列课程---Lesson15LLY110602_Dalvik虚拟机概述相关推荐
- Android深入浅出系列课程---Lesson13 LLY110529_虚拟机概述,JIT概述
大家好,上一讲我们介绍了Android.Framework源码下载及编译,这一讲我们将进入虚拟机概述,JIT概述 课程目标: 知道虚拟机的概念,JVM , JIT 重点 ...
- Android深入浅出系列课程---Lesson7 LLY110426_Android系统启动
大家好,上一讲我们介绍了Activity状态保存,这一讲我们将进入Android系统启动. 一.课程目标: 从系统角度了解Android启动过程 二.重点难点: 下载源代码并且根据源代码 ...
- Android深入浅出系列之Android工具的使用—模拟器(一)
前言 我们下载的SDK包里面有一个叫"Tools"的文件夹,里面为我们提供了许多与Android开发相关的工具,其中一些是必不可少的,现在我们就介绍一下模拟器 Android模拟器 ...
- Android深入浅出系列之实例应用—简单的手指拖动图片,图片滑来滑去显示应用Gallery和BaseAdapter以及ImageView的使用...
前言 我们现在在随便一个手机上用手指在屏幕上滑来滑都可以去拖动图片,其实在Android里这很简单,下面我就给大家具体讲解一下. 思路 我们首先需要Gallery这个对象,俗称画廊对象,大家都知道 ...
- Android深入浅出系列之实例应用—手机页面之间的跳转
在网页里,我们可以通过超级链接从一个网页跳转到另外一个网页,在手机里面,要如何实现手机页面之间的跳转呢? 原理:通过布局文件和setContentView()方法配合来实现.通过点击第一个布局文件ma ...
- Android深入浅出系列之Android工具的使用—调试桥ADB(二)
阅读目录 一:调试桥ADB 二:ADB的主要功能有哪些? 一:调试桥ADB adb是什么?adb有什么用?adb工具如何用? 是用来管理模拟器和真机的通用调试工具,该工具功能强大,直接打开cmd即 ...
- Android深入浅出系列之实例应用—弹出消息Toast对象的使用自定义方式(二)
阅读目录 一:前言 二:实例 三:运行效果 一:前言 Android中定义了一个Toast对象,用以弹出一个窗口来给予用户帮助和提示,和对话框不同的是,Toast并不是以独占方式显示的,它并不会抢夺用 ...
- Android深入浅出系列之实例应用—弹出消息Toast对象的使用纯文本方式(一)
阅读目录 一:Toast 二:实现步骤 一:Toast Toast是Android专属的提示信息的对象,它的使用非常的简单,但是用途却非常的广泛,Toast就是一个简短的信息,将要告诉用户的信息以一个 ...
- ASP.NET AJAX深入浅出系列课程(10):基于Microsoft AJAX Library扩展客户端组件.zip(10.77 MB)...
讲座内容: 利用面向对象类型系统是扩展组件的常用方法,但是我们在客户端进行开发的时候也不能忘记正在使用的是JavaScript这个非常灵活的动态语言,使用一些特殊的方式来扩展组件有时候会得到更好的效果 ...
最新文章
- NLP工程师平均月薪3W起,如何从文本情感分析入坑NLP?
- 【Android 事件分发】事件分发源码分析 ( ViewGroup 事件传递机制 六 )
- 0.0 目录-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- 前端知识点回顾——HTML,CSS篇
- 阿里云前端周刊 - 第 14 期
- ElasticSearch之高亮显示
- Selenium XPath示例
- unity挺好用的移动端相机控制器(Android和IPhone通用)
- 程序员修炼之道(一)
- express实现上传图片到七牛云
- Execl操作基础——自动填充空白单元格
- DDS信号发生器原理与vivado仿真
- 百看不如一练 100道python经典题目,拿去参考学习练手(附答案)可复制
- IDEA 2020奇怪的控制台中文乱码问题
- 7-12 数字黑洞123
- 关于TCP的一些基础知识(1)
- python3 for index_Python3 抓取数据报错IndexError: list index out of range
- uboot通过u盘烧写linux内核,向Flash中烧写uboot和linux操作系统
- 博图14软件安装顺序_西门子TIA Portal博途软件的安装顺序
- 【美赛优秀论文模板】MCM 2016 A:洗个热水澡
热门文章
- Oracle中根据日期范围进行查询,查询大于某一天的数据,查询小于某一天的数据
- mysql slave 1062_mysql主从同步slave错误1062
- 【数据库系统综合实验】教学管理信息系统—学生选课及课程安排数据库综合实验
- miui 10 android 9,MIUI 10稳定版刚到 基于安卓9的MIUI10 8.9.7开发版也来了
- java.lang.IllegalArgumentException: interface UserMapper is not visible from class loader
- css3 匀速运动的圆
- FX3学习笔记2-cs-make[1]: [post-build] Error 2 (ignored)
- C++ std::condition_variable::notify_one()与notify_all()
- 现在ChatGPT可以使用谷歌插件进行快速交互访问了!
- ROS生成弓字形覆盖路径点逻辑分析