自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (3)
  • 收藏
  • 关注

原创 Android内存优化利器:MAT打开内存Bitmap(Windows版本)

本文主要使用Android内存分析工具MAT,查看应用内存中的原始图片,以便发现Bitmap产生的内存问题。方法原始地址:http://androidperformance.com/2015/04/11/AndroidMemory-Open-Bitmap-Object-In-MAT.html再此首先谢过,该文中使用的Linux系统,无奈本人使用的Windows系统,一番折腾以后记录于此。

2017-04-15 13:44:11 494

原创 Android安全攻击——对象序列化OOM问题

前言最近在项目中使用ObjectInputStream/ObjectOutputStream进行对象的序列化和反序列化,出现了OOM的问题,在解决的过程中简单的研究了一下对象的序列化和反序列化(使用Serializable接口)的过程,简单做一个记录。发现了一个持久化存储序列化数据的安全风险,可能会受到恶意攻击,导致必现的OOM。使用场景应用在使用过程中,首先使用ObjectO

2017-02-27 14:50:56 1578 3

原创 Android之Handler的post注意事项

最近在开发的时候遇到一个问题,post到主线程handler里面的runnable一直得不到执行,找了好久发现问题,记录于此。    看一下下面的代码:public class TestRunnableTask implements Runnable { private static final String TAG = "TestRunnableTask"; private st

2016-12-13 19:30:41 5417

原创 浅谈Android实现3D旋转

本文主要记录有关View以及Bitmap的3D旋转效果的实现方法与相关思考。1 使用Animation实现View的3D旋转采用继承Animation的方法实现View的3D旋转效果,在ApiDemos里面有详细的代码,具体路径为src/com/example/android/apis/animation/Rotate3dAnimation.java贴一下代码,记录一下:/* *

2016-06-27 22:56:29 6278 1

原创 Android广播机制详解

1 广播类型从广播的注册方式来分,分为以下2种:(1)静态广播:通过的形式在AndroidManifest.xml中注册的广播;(2)动态广播:通过context. registerReceiver在程序中显示注册的广播;上面静态广播和动态广播比较明显的2个区别:   1)静态广播在进程没有运行的时候,也可以收到,这时候会先启动进程,然后处理广播onReceive函数(静态广播

2016-06-07 23:16:13 15909 2

原创 Android减少布局层次--有关Activity根视图DecorView的思考

1 前面文章里面总结的一张图           一直觉得有关DecorView还是有些问题没有搞清楚,今天在看了一点有关SurfaceFlinger的内容以后,顿时突发奇想,想到之前的问题,之前的思考是:    虽然可以将DecorView作为Activity布局的父View,也就是只存在  DecorView---->Activity Layout两层,但是

2016-04-13 09:21:25 12102 3

原创 Scroller滑动原理--滑动动画驱动原理+滑动不到位误差分析

记录:这里主要记载最近学习的结合Scoller实现View的滑动,从应用和源码的角度去分析一下滑动实现的过程。1、View的相关支持 /** * The offset, in pixels, by which the content of this view is scrolled * horizontally.这里说的是view的内容滑动的偏移量,不是view本身,准确的

2016-04-11 20:29:59 5337 3

原创 Android消息机制Looper与VSync的传播

1 主要内容本文主要简单记录在native层Looper消息机制的相关内容,主要着手于下面几个问题: (1)消息机制的原理; (2)VSync是如何借助消息机制进行传播的;2 Android消息机制2.1 应用进程的创建说起Android的消息机制,先大致的理一下Android应用的运行机制,Android上层是基于消息机制的,首先考虑一个问题,描述如下:Android应用作为运行在Linux平

2016-03-22 20:37:12 6893 5

原创 Android垂直同步信号VSync的产生及传播结构详解

1 记录垂直同步信号,也就是下图的VSync产生的过程,主要包括以下几个点: (1)VSync是如何产生的? (2)VSync最初是在哪个进程中捕获的? (3)VSync是如何分发到各个应用进程的? (4)view.invalidate是如何与VSync配合,从而实现重绘的? 2 SurfaceFlinger进程 以前的Android系统中SurfaceFlinger是在Syst

2016-03-16 20:22:54 15436 3

原创 搜索目录

文章记录一下最近看书的一些有关目录搜索的实现,基于java的Pattern,采用正则表达式实现,能够实现基于正则表达式的的目录搜索!1 String简单的记载一下java里面的String,因为和之前学习的C++中的string不大一样(一下子想不出来主要些什么,先写一点,以后再补充)(1)不能被继承:点开源码,可以看到public final class String,String被

2015-07-03 14:40:58 628

原创 Eclipse常用快捷键记录

最近开始学习java,记录一下Eclipse我觉得常用的一些快捷键,慢慢补充,持续更新。。。。注释:ctrl+/或者ctrl+7:切换注释,注释或取消注释当前选择的所有行,使用的是单行注释//ctrl+shift+/:添加块注释,在当前选择的多行代码周围添加块注释,使用/* */ctrl+shift+\:取消块注释,在当前选择的多行代码周围除去块注释,去除/* */

2015-06-12 11:07:02 447

原创 阶乘的计算

最近看到一条题目,计算n!,阶乘由于它的特殊性,需要涉及到大数运算,本文在32位机器下描述一个简单的计算方法。        网上有很多种方法,本文就用数组的形式来保存计算结果,首先可以知道unsigned的数据范围是0-2^32-1,因此常规的想法就是将进制提升到2^32,从而用一个数组来保存计算结果,下面给出具体代码:int bigNum( int x, unsigned *p, in

2015-03-11 13:19:27 1198

原创 linux0.11源代码在gcc4.3.x gcc4.4.x下编译bochs下模拟

注明:本人刚刚开始学习linux系统,纯纯的小菜鸟一个,在这里写下这篇文章的主要目的是记载最近的一些工作,本文的大多数内容均来自互联网上的先驱者,此处只是在自己现有的环境下,根据需要进行了一些资源的整合,另外本文只是一个工作记录性质的日记,并没有技术含量,因此,望各位看官明确!最后再次隆重声明本文借鉴了很多先驱者的相关工作,如果文中没有提到着实是因为时间太长了找不到出处了,还望各位原创的前辈们见谅

2015-01-21 16:06:42 1252 1

原创 源代码笔记——container_of

近日在看红黑树的相关知识,在Linux的红黑树源代码中看到了

2014-11-12 11:34:00 650

原创 满足条件的第n个数

题目:满足2

2014-10-30 15:58:42 752

原创 满足条件的最小组合数m

题目:输入一个正整数n,请找出最小的正整数m(m>9,也就是至少是两位数),使得m的各个位(个位、十位、百位。。。)乘积之和等于n,不存在输出-1。例如:n = 36时,输出49; n=100时,输出455;分析:首先需要判断对于任意一个n,是否存在相应的m,判断依据是对于十进制而言,每一位在0-9之间,若该数存在10以上的质因子,则一定不存在相应的m。逆向思维:不存在10以上的质因子

2014-10-17 20:08:29 1862

原创 两点间方格路径总数

题目描述:一个长方形,由m*n个大小

2014-10-17 09:22:13 6186 1

原创 C++ new、堆上和栈上分配对象

new:()1 仅在堆上才能创建的对象

2014-10-13 11:43:14 5883

转载 linux 进程文件 文件描述符

转载自:Jezze 、辉仔url:http://www.cnblogs.com/Jezze/archive/2011/12/23/2299861.html         http://blog.csdn.net/kennyrose/article/details/7595013

2014-10-07 14:22:58 4444

转载 linux I/O复用select、poll和epoll

转载自:哈维、dpkirin

2014-10-04 22:13:33 2300

转载 linux的Listen调用详解

转载自:stanjiang2010

2014-10-03 10:32:41 1808

转载 进程地址空间与虚拟存储空间的理解——转载自do2jiang

文章转载自:http://blog.csdn.net/do2jiang/article/details/4690967?reload在进入正题前先来谈谈操作系统内存管理机制的发展历程,了解这些有利于我们更好的理解目前操作系统的内存管理机制。一 早期的内存分配机制在 早期的计算机中,要运行一个程序,会把这些程序全都装入内存,程序都是直接运行在内存上的,也就是说程序中访问的内存地址都是实际

2013-05-26 16:23:59 2038

vs2010下lib和dll文件的使用

详细描述了vs2010下dll动态库的生成与使用方法,包括类的导出方法

2013-10-03

opencv学习 中文版

该资源为中文版opencv学习材料,是国外翻译来的,内容全面且权威

2012-01-04

ov7620应用

基于摄像头ov7620的简单示例,适用于初学者,以及喜欢智能车的朋友们

2011-12-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除