简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
Dalvik 虚拟机支持垃圾收集,但是这不意味着你可以不用关心内存管理。你应该格外注意移动设备的内存使用,手机和平板的内存空间是受到限制的。在这篇文章里面,我们来看看Android SDK里面的一些内存剖析工具(profiling tools)是如何帮助我们修整应用程序的内存使用。一、 内存泄露一些内存使用问题是很明显的,例如,如果在每次用户触摸屏幕的时候应用程序有
dex是Android平台上(Dalvik虚拟机)的可执行文件, 相当于Windows平台中的exe文件, 每个Apk安装包中都有dex文件, 里面包含了该app的所有源码, 通过反编译工具可以获取到相应的java源码。 为什么需要学习dex文件格式? 最主要的一个原因: 由于通过反编译dex文件可以直接看到java源码, 越来越多的app(包括恶意病毒app)都使用了加固技术
Dalvik是Android的核心组成部分之一,Android上的应用程序需要依靠它才可以正常运行。现在Google准备用新的运行环境ART来替代它。在最新的Android4.4上,有两个运行环境供开发者选择——默认的Dalvik和测试中的ART。在以前的Android系统上,所有的应用程序都是运行在Dalvik中。应用程序每次运行时其中一部分代码都要需要机器重新编译。这个过程即消耗时间又
本文旨在帮助初学Android 开发的朋友了解各种基本流程,有不当之处,欢迎指正。开发App流程环境搭建--->编码--->编译--->打包输出---->安装应用--->运行应用环境搭建:就是安装开发软件(如JRE、Android Studio 、 Eclipse);编码:新建工程,编写代码,例如写个hello world的demo;...
什么是守护线程,什么是非守护线程>Java有两种Thread:“守护线程Daemon”(守护线程)与“用户线程User”(非守护线程)。用户线程:非守护线程包括常规的用户线程或诸如用于处理GUI事件的事件调度线程,Java虚拟机在它所有非守护线程已经离开后自动离开。守护线程:守护线程则是用来服务用户线程的,比如说GC线程。如果没有其他用户线程在运行,那么就没有可服务
在Android系统中,应用程序进程都是由Zygote进程孵化出来的,而Zygote进程是由Init进程启动的。Zygote进程在启动时会创建一个Dalvik虚拟机实例,每当它孵化一个新的应用程序进程时,都会将这个Dalvik虚拟机实例复制到新的应用程序进程里面去,从而使得每一个应用程序进程都有一个独立的Dalvik虚拟机实例。 Zygote(受精卵),是Android中最重要的一个进...
1 Introduction1.1 概述Xposed是GitHUB上rovo89大大设计的一个针对Android平台的动态劫持项目,通过替换/system/bin/app_process程序控制zygote进程,使得app_process在启动过程中会加载XposedBridge.jar这个jar包,从而完成对Zygote进程及其创建的Dalvik虚拟机的劫持。与采取传统的Inhook方式...
编译期:检查是否有语法错误,如果没有就将其翻译成字节码文件。即.class文件。运行期:java虚拟机分配内存,解释执行字节码文件。 从以下代码开始说明,欢迎大家指正可以思考下,第一行跟第二行在编译时期有什么区别?java编译时会做一些优化操作。第一行,因为是两个常量做运算,那么他们的结果就是确定的,即num1的值是确定的。所以在编译时,编译器就会直接算出num1的值。第二行则...
很多初次学数据库的朋友,对于通过虚拟机访问数据库,经常会出现各种设置问题,希望本文能够帮助学者,高手大牛请飘过。1、准备工作a)在Mac系统电脑上安装好Parallels Deskop虚拟机,虚拟机安装好操作系统,如Windows xpb)下载Oracle数据库安装包,例如oracle 10g,创建数据库名称为orcl, 用户名:scott密码:tiger2
flex布局用途:快速实现你所需要的布局(水平居中、垂直居中、左右对齐等) 1、对布局容器设置display:flex; 2、利用属性(justify-content(水平方向)和align-items(垂直方向))进行设置。例如垂直居中:/* wxml */<view class="classname"><text>测试