【Android程序运行分析——中等复杂程度的NTAG I2C Demo为例】教程文章相关的互联网学习教程文章

android 内存泄漏分析技巧【图】

java虚拟机运行一般都有一个内存界限,超过这个界限,就会报outofmemory。这个时候一般都是存在内存泄漏。解决内存泄漏问题,窃以为分为两个步骤:分析应用程序是否真的有内存泄漏,找到内存泄漏的地方。这两个步骤都不是一般意义上的调试,直接打log,断点调试都不是太给力。动脑筋想一想,内存问题应该在很多地方上都会出现,这么常见的问题应该是有工具的。android现在更可以说是一个生态系统,当然也有很多开发辅助工具。在前面...

Android Launcher分析和修改1——Launcher默认界面配置(default_workspace)【代码】【图】

最近工作都在修改Launcher,所以打算把分析源码和修改源码的过程记录下来,最近会写一些关于Launcher的分析和修改博文。因为我是修改4.0.3的Launcher,所以后面文章里面的Launcher都是基于Android4.0.3的Launcher2修改。Launcher源码比较多,而且里面应用了很多设计模式,要把它分析清楚要花不少精力,网上也有一些零碎的分析文章,不过关于修改的文章不多。所以打算写一些分析和修改Launcher结合的文章。原创博文,转载请标明出处...

Android TraceView 最权威的性能分析工具【代码】【图】

TraceView是什么Traceview是android平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。Traceview的作用查看跟踪代码的执行时间,分析哪些是耗时操作 可以用于跟踪方法的调用,尤其是Android Framework层的方法调用关系如何使用TraceView使用TraceView主要有两种方式:最简单的方式就是直接打开DDMS,选择一个进程,然后按上面的“Start Method Profiling”按钮,等...

Android消息处理机制(源码分析)【图】

前言虽然一直在做应用层开发,但是我们组是核心系统BSP,了解底层了解Android的运行机制还是很有必要的。就应用程序而言,Android系统中的Java应用程序和其他系统上相同,都是靠消息驱动来工作的,它们大致的工作原理如下:1. 有一个消息队列,可以往这个消息队列中投递消息。2. 有一个消息循环,不断从消息队列中取出消息,然后处理 。为了更深入的理解Android的消息处理机制,这几天空闲时间,我结合《深入理解Android系统》看了...

【转载】Android 的 Handler 机制实现原理分析

handler在安卓开发中是必须掌握的技术,但是很多人都是停留在使用阶段。使用起来很简单,就两个步骤,在主线程重写handler的handleMessage( )方法,在工作线程发送消息。但是,有没有人想过这种技术是怎么实现的呢?下面我们一起探讨下。先上图,让大家好理解下handler机制:handler机制示例图上面一共出现了几种类,ActivityThread,Handler,MessageQueue,Looper,msg(Message),对这些类作简要介绍:ActivityThread:程序的启...

Android 性能分析工具之 TraceView 使用说明【图】

TraceView 是 Android 平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到 method。TraceView 简介TraceView 是 Android 平台特有的数据采集和分析工具,它主要用于分析 Android 中应用程序的 hotspot。TraceView 本身只是一个数据分析工具,而数据的采集则需要使用 Android SDK 中的 Debug 类或者利用 DDMS 工具。二者的用法如下:开发者在一些关键代码段开始前调用 Andro...

Android dumpsys 内存分析【图】

研究了Mat和Heap的分析方法之后,尝试用其他的方式来分析下,Androiddumpsys 的方式来看下结果。如何得出数据的操作就不说了,网上太多了,只看数据来进行分析。如图1,启动的时候的情况执行三次怀疑有泄露的功能之后的数据再执行三次再执行三次 数据分析:Native 数据代表的是JNI层的数据,从mallinfo usmblks 获得DalviK 数据代表的是Java层的数据,从Runtime Totalmemory获得 Size 代表是能获得的最大的数据Alloc代表的是目前在...

android 内存溢出问题分析

最近的项目中,内存一直再增长,但是不知道是什么问题,导致内存溢出,在网上看到了这么一篇关于内存分析与管理的文章,解决了部分问题,感觉这篇文 章还不错,就转帖到我的blog上了,希望对大家有所帮助。如果哪里有不好的地方,给留下言,然后我们大家继续完善内存泄露的问题,对大家都会有所帮助 的,呵呵一、概述 1 二、Android(Java)中常见的容易引起内存泄漏的不良代码 1 (一) 查询数据库没有关闭游标 2 (二) 构造Adapter时,...

Android的startActivityForResult()与onActivityResult()与setResult()参数分析,activity带参数的返回【代码】

一、使用场景  在一个主界面(主Activity)通过意图跳转至多个不同子Activity上去,当子模块的代码执行完毕后再次返回主页面,将子activity中得到的数据显示在主界面/完成的数据交给主Activity处理。这种带数据的意图跳转需要使用activity的onActivityResult()方法。(1)startActivityForResult(Intent intent, int requestCode);   第一个参数:一个Intent对象,用于携带将跳转至下一个界面中使用的数据,使用putExtra(A,B)方法...

CVE-2015-1530 ,CVE-2015-1474 两个android整数溢出漏洞 分析

An integer overflow in Android media could be exploited to get media_server permission(CVE-2015-1530)Integer overflow leading to heap corruption while unflattening GraphicBuffer In Android(CVE-2015-1474)原文:http://www.cnblogs.com/jiayy/p/4444768.html

【转】Pro Android学习笔记(五三):调试和分析(1):Debug视图和DDMS视图【图】

目录(?)[-]Debug视图DDMS视图查看应用运行状态进入debug状态HPROFThread信息Method信息Stop截图UI层次架构信息其它的Tab中提供的功能 我们将基于Eclipse了解如何对应用进行调试,即debug。Android插件提供的DDMS可以给予很多帮助,包括视图(那个设备被连接),模拟器控制(发送电话呼叫,SMS短信,GPS信息),文件浏览器(查看/传输设备上的文件),thread,heap和allocation跟踪器。在一个真实设备调测应用,除了将设备设置为USB...

android 上传文件(表单),表单填写格式分析

原文地址:http://blog.sina.com.cn/s/blog_68494364010116gk.html在Android的客户端编程中(特别是SNS 类型的客户端),经常需要实现注册功能Activity,要用户输入用户名,密码,邮箱,照片后注册。但这时就有一个问题,在HTML中用form表单就 能实现如上的注册表单,需要的信息会自动封装为完整的HTTP协议,但在Android中如何把这些参数和需要上传的文件封装为HTTP协议呢?我们可以先做个试验,看一下form表单到底封装了什么样的...

android分析之Parcel【代码】

将数据打包,跨进程传输(通过Binder)。看看这货究竟是啥玩意:Parcel.java :public final class Parcel {private static final boolean DEBUG_RECYCLE = false;private static final String TAG = "Parcel";@SuppressWarnings({"UnusedDeclaration"})private int mNativePtr; // used by native code,非static /*** Flag indicating if {@link #mNativePtr} was allocated by this object,* indicating that we‘re responsibl...

Android measure过程分析【代码】【图】

作为一名Android开发人员,我们都知道一个View从无到有,会经历3个阶段:1. measure/测量阶段,也就是确定某个view大小的过程;2. layout/布局阶段,也就是确定其左上右下坐标的过程;3. draw/绘制阶段,也就是按照前面2步计算的结果,将view绘制在屏幕相应的位置上;今天,我带领大家来看看View系统的measure过程。到现在相信大部分人都知道measure是从ViewRootImpl.measureHierarchy方法开始的,但归根结底是从performTraversals...

Android base-adapter-helper 源码分析与扩展【代码】【图】

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/44014941,本文出自:【张鸿洋的博客】本篇博客是我加入Android 开源项目源码解析分析的一篇文章,初次加入,所以选了个比较简单的库,如果你曾经看过Android 快速开发系列 打造万能的ListView GridView 适配器对本篇博客就不会太陌生, base-adapter-helper就是完成类似万能适配器的功能,当然了它本身不支持多种Item布局的情况,我们在下文会分析给出原因以及...