摘要: 转载请注明出处:http://blog.csdn.net/qinjuning 本节内容主要是讲解ActivityManager的使用,通过ActivityManager我们可以获得系统里正在运行的activities,包括 进程(Process)等、应用程序/包、服务(Service)、任务(Task)信息。 计划如下: 第一部分:获取系统可用内存以及所有的正在运行的进程信息 ; 第二部分:获取每个进程里运行的应用程序信息和所有正在运行的应用程序 第三部分:获取正在运行的服务和任务信息。 每部分都准备了相应的Demo,助您更深的理解. 知识准备:Android 应用程序模块: 应用、... 阅读全文
posted @ 2013-03-12 20:17 天地乐 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 本文把Aforge的运动识别与前面介绍的手写识别融合在一起,实现单个手指的手势识别。下图演示了本文代码运行的结果,图片有点大,请稍候。。。 我预先让程序学习了B和C这两个字母,然后通过手指的手势识别向程序绘画图形,所以点击recorgize时,就自动把图形的特征对应的字母给识别出来了。 这个例子关键部分在于如何灵活运用Aforge的运动识别,如何判断是要画图,还是普通的移来移去呢?在这里,我判断移动对象的大小,当突然面积增大(即两个指套合并)则开始绘图(手势识别的开始),当拆开再合并则为解除绘图(手势识别 阅读全文
posted @ 2013-03-12 20:14 天地乐 阅读(599) 评论(0) 推荐(0) 编辑
摘要: 本文原创, 转载请注明出处:http://blog.csdn.net/qinjuning 天气逐渐热了,自己也越来越懒了,虽然看着了很多东西,解决了很多问题,有些收获却不想写着。主要有一下两方面原因: 第一、以前写的一些关于Android知识的Blog,都是在学习过程中发现网络上没有相关知识,因此下了很大决心,才一步 一步码字儿给贴出来。承蒙各位网友的厚爱,本博客还是有些底子的。 第二、最近的工作态度发生了改变,不在像那么以前充满热情,充满力量,就着问题解决问题,自己都有点耐烦了。心里 寻思着,也许是该改变些什么了吧。 新的手机项目,又开始从事之前的Settings模块了,现在看看S... 阅读全文
posted @ 2013-03-12 20:09 天地乐 阅读(355) 评论(0) 推荐(0) 编辑
摘要: Java Nativie Interface(JNI,中文名称Java本地接口)标准时Java平台的一部分,它允许Java代码和其他语言写得代码进行交互。JNI是本地编程接口,它使得Java虚拟机(VM)内部运行的Java代码能够用其他编程语言(如C、C++和汇编语言)编写的应用程序和库进行交互操作。JNI的主要用途是为了对硬件进行访问以及追求高效率或可重用C/C++库。 Android系统中采用了JNI的方式来调用C/C++方法,然而,在Android系统里进一步加强了Java JNI的使用,使JNI的调用更具有效率。因此,总的来说,Android系统里可以采用两种方式来使用JNI。第一种: 阅读全文
posted @ 2013-03-12 20:00 天地乐 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 转载请注明出处:http://blog.csdn.net/qinjuning 由于在网络上找到关于Canvas的使用都比较抽象,也许是我的逻辑思维不太好吧,总是感觉理解起来比较困难, 尤其是对save()和restore()方法的使用。本篇文章的内容就是对Canvas的使用进行一下总结,包括它的两种不同的使用 情节和它的一些方法进行一下说明。 1 Bitmap,可以来自资源/文件,也可以在程序中创建,实际上的功能相当于图片的存储空间; 2 Canvas,紧密与Bitmap联系,把Bitmap比喻内容的话,那么Canvas就是提供了众多方法操作Bitamp的平台; 3 Paint,与Ca... 阅读全文
posted @ 2013-03-12 19:58 天地乐 阅读(295) 评论(0) 推荐(1) 编辑
摘要: Notification —— 通知,是一种让你的应用程序在不使用Activity的情况下警示用户。它是看不见的程序组件(Broadcast Receiver,Service和不活跃的Activity)警示用户有需要注意的事件发生的最好途径。 Notification 是由NotificationManager(系统服务)统一管理的。 一般来说, 一个Notification应该传送的消息包括: 1 、一个状态条图标 2、在拉伸的状态栏窗口中显示额外的信息和启动一个Application的Intent 3、闪灯或LED 4、电话震动 在状态栏(Status Bar)中,通知主要有两类(... 阅读全文
posted @ 2013-03-12 19:57 天地乐 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 转载请注明出处:http://blog.csdn.net/qinjuning 通过第一部分<<Android中获取应用程序(包)的信息-----PackageManager的使用(一)>>的介绍,对PackageManager以及AndroidManife.xml定义的节点信息类XXXInfo类都有了一定的认识。 本部分的内容是如何获取安装包得大小,包括缓存大小(cachesize)、数据大小(datasize)、应用程序大小(codesize)。本部分的知识点涉及到AIDL、Java反射机制。理解起来也不是很难。 关于安装包得大小信息封装在PackageStats类中 阅读全文
posted @ 2013-03-12 19:55 天地乐 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 转载请注明出处:http://blog.csdn.net/qinjuning 本节内容是如何获取Android系统中应用程序的信息,主要包括packagename、label、icon、占用大小等。具体分为两个 部分,计划如下: 第一部分: 获取应用程序的packagename、label、icon等 ; 第二部分: 获取应用程序的占用大小,包括:缓存大小(cachsize)、数据大小(datasize)。 每部分都为您准备了简单丰富的实例,您一定不会错过。 Android系统为我们提供了很多服务管理的类,包括ActivityManager、PowerManager(电源管理)、Aud... 阅读全文
posted @ 2013-03-12 19:53 天地乐 阅读(169) 评论(0) 推荐(0) 编辑
摘要: Java对象池技术的原理及其实现Java对象池技术的原理及其实现 单例模式是限制了一个类只能有一个实例,对象池模式则是限制一个类实例的个数。对象池类就像是一个对象管理员,它以Static列表(也就是装对象的池子)的形式存存储某个实例数受限的类的实例,每一个实例还要加一个标记,标记该实例是否被占用。当类初始化的时候,这个对象池就被初始化了,实例就被创建出来。然后,用户可以向这个类索取实例,如果池中所有的实例都已经被占用了,那么抛出异常。用户用完以后,还要把实例“还”回来,即释放占用。 对象池类的成员应该都是静态的。用户也不应该能访问池子里装着的对象的构造函数,以防用户绕开对象池创建实例。 ... 阅读全文
posted @ 2013-03-08 23:39 天地乐 阅读(159) 评论(0) 推荐(0) 编辑
摘要: Java线程池总结 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。当T1 + T3 远大于 T2时,采用多线程技术可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 线程池就是一个线程的容器,每次只执行额定数量的线程, 线程池作用就是限制系统中执行线程的数量。采用线程池不仅调整T1,T3产生的时间段,而且它还显著减少了创建线程的数目。 为什么要用线程池: 1)减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务 2)可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为因为消耗过多的内存,而把服 阅读全文
posted @ 2013-03-08 23:38 天地乐 阅读(176) 评论(0) 推荐(0) 编辑