导航

2013年12月4日

摘要: (2010-04-15 07:43:20)转载poll方式Poll方式,也称为轮循,是大家都比较熟悉的一种数据同步方式,客户端定期去ping查询服务器,确定是否有需要的数据。例如,软件更新模块,客户端软件需要定期去查询官方网站,判断当前是否有更新的版本,如果有就提醒用户进行升级。邮件客户端,需要定期查询邮件服务器,查询是否有新的邮件。RSS阅读器,也是需要不断的查询rss地址的状态,如果有更新,就将数据拿回来。当服务器没有数据的时候,poll方式会浪费大量的带宽。为了降低带宽,通常是采用减低poll的频率来实现的,这就导致了消息的长延迟,实时性不高。像gmail的POP3邮件检查间隔从10分钟 阅读全文

posted @ 2013-12-04 20:45 littledrop 阅读(656) 评论(0) 推荐(0) 编辑

摘要: http://wenku.baidu.com/link?url=XoGRDuWB8iMioxfz8eS8Uh8sBkjAl2kbm831eIDkACg3CWwgwMDE3SPXM9j5A4PuANnc4N6x07KOWfYvFYeGyh2gTSZa_wU244TMHPi9NRO 阅读全文

posted @ 2013-12-04 18:55 littledrop 阅读(93) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.eoeandroid.com/thread-35202-1-1.html在handler的简单用法中,我们自己简单new出一个handler 然后调用它的sendMessage方法发出一条消息。然后在handler类重写了handler的handlerMessage方法来进行处理。看似就是这么简单的俩步,其实背后隐藏了很多我们不知道的流程。 在介绍这个之前,我先介绍几个概念1。Message 这个应该很清楚吧 就是我们发送的消息 介绍一个里面的一个方法Message.obtain函数。作用是从Message Pool中取出一个Message,如果Message Po 阅读全文

posted @ 2013-12-04 18:39 littledrop 阅读(131) 评论(0) 推荐(0) 编辑

摘要: 转自: http://dev.wo.com.cn/docportal/doc_queryMdocDetail.action?mdoc.docindex=65322012-07-31 14:36:32 上传者:wangdao下载(0)浏览(471)评论(0)推荐(0)标签:android中...LooperMessage...Message类资源描述:[coolxing按: 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正.]多线程在所有编程语言中都是比较难以理解和掌握的, 这几天上网看了很多android多线程方面的资料, 在这里做一些总结.什么时候使用多线程:1. 耗时操作使用多线程, 阅读全文

posted @ 2013-12-04 18:32 littledrop 阅读(146) 评论(0) 推荐(0) 编辑

摘要: 转自: http://www.thinksrc.com/?p=75001NOTE: 这篇文章被广泛引用,android的休眠是在linux休眠的基础上加了early suspend. 这里着重把linux休眠和唤醒的过程摘取出来,详细内容见原链接.对于休眠(suspend)的简单介绍在Linux中,休眠主要分三个主要的步骤:冻结用户态进程和内核态任务调用注册的设备的suspend的回调函数顺序是按照注册顺序休眠核心设备和使CPU进入休眠态 冻结进程是内核把进程列表中所有的进程的状态都设置为停止,并且保存下所有进程的上下文. 当这些进程被解冻的时候,他们是不知道自己被冻结过的,只是简单的继续执. 阅读全文

posted @ 2013-12-04 17:09 littledrop 阅读(277) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/pillarbuaa/article/details/9117299分类:WorknoteAndroid 模块-powerAndorid 分析-system2013-06-19 12:12324人阅读评论(0)收藏举报写了很多内容,突然发布文章的时候保存失败。郁闷凭借记忆只重写如下总结:1. Early suspend/ late resume 是android 添加的机制,用户关闭LCD, TS, Sensors等为了省电。可称之为浅度休眠2.Linux的Suspend/resume 仍然有效,可称之为深度休眠3.echo mem > s 阅读全文

posted @ 2013-12-04 16:45 littledrop 阅读(525) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/harhy/article/details/8528292分类:android2013-01-22 08:55856人阅读评论(0)收藏举报前面我们分析了休眠的第一个阶段即浅度休眠,现在我们继续看休眠的第二个阶段 — 深度休眠。在深度休眠的过程中系统会首先冻结所有可以冻结的进程,然后依次挂起所有设备的电源,挂起顺序与设备注册的顺序相反,这样保证了设备之间电源的依赖性;直至最后进入省电模式,等待用户或者RTC唤醒;在唤醒过程中则会按照设备注册的顺序依次恢复每个设备的电源进入正常工作状态,解冻相关的进程,然后再进行浅度休眠的唤醒流程。1、深度休眠入口 阅读全文

posted @ 2013-12-04 16:38 littledrop 阅读(1436) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/sdphome/archive/2011/11/15/2249388.html本文属于原创!!如要转载,请注明来源处http://blog.sina.com.cn/s/blog_759dc36b0100stax.html 背景介绍:睡眠/唤醒是嵌入式Linux非常重要的组成部分,因为优秀的睡眠唤醒机制可以是嵌入式设备尽可能的进入休眠状态,来延长电池的续航时间(这在移动终端消费类电子设备中是非常重要和有意义的!!)。但标准的Linux 睡眠唤醒机制有其自身的一些缺陷(所有模块必须同时睡下或者唤醒),在某些情况下,这会导致能耗的白白浪费。因此An 阅读全文

posted @ 2013-12-04 16:08 littledrop 阅读(314) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/laojing123/article/details/7610327NOTE: 可以主要参照前面的文字描述部分了解suspend原理,后半部分代码可跳过. 最近研究如何让Android不休眠。听组里人说,机器在充电的时候不休眠。我试了一下,确实是,串口可以使用(CONFIG_PM_DEBUG并没有打开)。这个时候,LCD显示屏是休眠了,触摸屏也休眠了,其他的比如重力传感器等就没有看了,但是标准的Linux系统并没有进入休眠。看了网上好多关于Android系统的休眠与唤醒例子,感觉有些懵懵懂懂的。于是,还是看内核代码吧。 Android... 阅读全文

posted @ 2013-12-04 16:02 littledrop 阅读(410) 评论(0) 推荐(0) 编辑

摘要: 转自: http://www.programbbs.com/doc/5888.htmAlarm manager 主要管理硬件时钟。一些与时间相关的应用,如日历,闹钟等需要使用Alarm Manager的服务。Alarm manager功能相对比较简单,相关代码位于frameworks/base/core/jni/server/com_android_server_AlarmManagerService.cppframeworks/base/services/java/com/android/server/AlarmManagerService.java一. frameworks/base/co 阅读全文

posted @ 2013-12-04 15:54 littledrop 阅读(182) 评论(0) 推荐(0) 编辑

摘要: 转自: http://yuanzhifei89.iteye.com/blog/1131523AlarmManager的作用文档中的解释是:在特定的时刻为我们广播一个指定的Intent。简单的说就是我们设定一个时间,然后在该时间到来时,AlarmManager为我们广播一个我们设定的Intent。对应AlarmManager更深层的了解可以参考:http://www.programbbs.com/doc/5888.htmhttp://jinguo.iteye.com/blog/799778android提供了四种类型的闹钟:❑ ELAPSED_REALTIME在指定的延时过后,发送广播,但不唤醒 阅读全文

posted @ 2013-12-04 15:52 littledrop 阅读(121) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/ryantang03/article/details/8683921分类:Android2013-03-17 16:551929人阅读评论(4)收藏举报加上这篇介绍Android广播的,我的BLOG中就对Android中四大组件Activity、BroadcastReceiver、ContentProvider、Service都做了介绍,感兴趣的同学可以翻阅我之前的博客对这些内容进行了解。今天主要介绍Android中广播(BroadcastReceiver)的基本使用,同时附上一个Demo,Demo覆盖除了ContentProvider之外其他三 阅读全文

posted @ 2013-12-04 15:46 littledrop 阅读(209) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/hanyonglu/archive/2012/04/12/2443262.html本文介绍Android平台中进程与线程的基本知识。 很早的时候就想介绍一下Android中的进程和线程,但由于其他的事情一直给耽搁了,直到现在才能和大家一起分享下。 1.Android进程基本知识: 我们先来了解下Android中的进程基本知识。 当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。 同时,Android会为每个应用程序分配一个单独的LINUX用户。And... 阅读全文

posted @ 2013-12-04 15:36 littledrop 阅读(101) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/hanyonglu/archive/2012/03/04/2378971.html本文介绍在Android中实现推送方式的基础知识及相关解决方案。推送功能在手机开发中应用的场景是越来起来了,不说别的,就我们手机上的新闻客户端就时不j时的推送过来新的消息,很方便的阅读最新的新闻信息。这种推送功能是好的一面,但是也会经常看到很多推送过来的垃圾信息,这就让我们感到厌烦了,关于这个我们就不能多说什么了,毕竟很多商家要做广告。本文就是来探讨下Android中实现推送功能的一些解决方案,也希望能够起到抛砖引玉的作用。^_^ 1.推送方式基础知识: 在.. 阅读全文

posted @ 2013-12-04 15:30 littledrop 阅读(127) 评论(0) 推荐(0) 编辑

摘要: 转自:Android AlarmManager实现不间断轮询服务分类:Android2013-07-13 11:402876人阅读评论(8)收藏举报在消息的获取上是选择轮询还是推送得根据实际的业务需要来技术选型,例如对消息实时性比较高的需求,比如微博新通知或新闻等那就最好是用推送了。但如果只是一般的消息检测比如更新检查,可能是半个小时或一个小时一次,那用轮询也是一个不错的选择,因为不需要额外搭建推送服务器,不用额外配置推送服务。另外推送现在一般以维持长连接的方式实现,在手机客户端也会耗费一定的电量。今天就介绍一个在Android上实现轮询机制的方法——使用AlarmManagerAlarmMa 阅读全文

posted @ 2013-12-04 15:20 littledrop 阅读(205) 评论(0) 推荐(0) 编辑

摘要: 转自:使用WakeLock使Android应用程序保持后台唤醒分类:Android2013-03-02 14:064715人阅读评论(7)收藏举报 在使用一些产品列如微信、QQ之类的,如果有新消息来时,手机屏幕即使在锁屏状态下也会亮起并提示声音,这时用户就知道有新消息来临了。但是,一般情况下手机锁屏后,Android系统为了省电以及减少CPU消耗,在一段时间后会使系统进入休眠状态,这时,Android系统中CPU会保持在一个相对较低的功耗状态。针对前面的例子,收到新消息必定有网络请求,而网络请求是消耗CPU的操作,那么如何在锁屏状态乃至系统进入休眠后,仍然保持系统的网络状态以及通过程序唤醒.. 阅读全文

posted @ 2013-12-04 15:18 littledrop 阅读(187) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/GnagWang/archive/2011/02/27/1966611.htmlPowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);通过Context.getSystemService().方法获取PowerManager实例。然后通过PowerManager的newWakeLock((int flags,Stringtag)来生成WakeLock实例。int Flags指示要获取哪种WakeLock,不同的Lock对cpu 、屏幕、键盘灯有不同影响 阅读全文

posted @ 2013-12-04 14:56 littledrop 阅读(146) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/braveheart_coolpad/article/details/12623631分类:android2013-10-11 21:12157人阅读评论(0)收藏举报1. 介绍.... 42. 电池管理.... 42.1. FrameWork.. 52.1.1. 监听... 52.1.1.1. UEventObserver的实现... 62.1.1.2. uevent 82.1.2. 状态读取... 92.1.3. 更新显示... 92.2. 驱动... 113. 用电统计.... 201. 介绍 首先区分一下电源管理, 电池管理和用电统计三个 阅读全文

posted @ 2013-12-04 14:31 littledrop 阅读(779) 评论(0) 推荐(0) 编辑

摘要: 转自:http://wenku.baidu.com/view/61ee1da7284ac850ad02422a.html Android下有三种省电方式: Early_suspend::主要是屏幕省电需要。进入early_suspend后,注册了early_suspend的外设进入休眠,大部分进程都还在运行,CPU处于正常工作状态。外设可以通过register_early_suspend注册为early_suspend设备。 LPAUDION_MODE:系统进入early_suspend模式之后,通过has_audio_wake_lock判断是否进入LPAUDION_MODE模式,... 阅读全文

posted @ 2013-12-04 11:17 littledrop 阅读(550) 评论(0) 推荐(0) 编辑