Android Doze模式启用和恢复】的更多相关文章

从Android 6.0(API level 23)开始,Android提出了两个延长电池使用时间的省电特性给用户.用户管理可以在没有充电的情况下管理app的行为.当用户一段时间没有使用手机的时候,Doze模式通过延缓app后台的CPU和网络活动减少电量的消耗.App Stanbdy延缓用户最近没有使用app的后台网络活动. 作为移动开发人员,我们开发的App需要有推送功能,不希望在锁屏或者不充电的时候被Doze模式干掉.那么如何检测手机进入Doze模式之后App的状态呢? 一.模拟未充电状态…
科技的仿生学无处不在,给予我们启发.为了延长电池是使用寿命,google从蛇的冬眠中得到体会,那就是在某种情况下也让手机进入类冬眠的情况,从而引入了今天的主题,Doze模式,Doze中文是打盹儿,打盹当然比活动节约能量了. 手机打盹儿的时候会怎样呢? 按照google的官方说法,Walklocks,网络访问,jobshedule,闹钟,GPS/WiFi扫描都会停止.这些停止后,将会节省30%的电量. 手机什么时候才会开始打盹呢? 上图是谷歌的Doze时序示意图,可以看出让手机打盹要满足三个条件…
Clockworkmod Recovery是一个由Cyanogen团队开发的用于Android设备的第三方定制Recovery恢复模式,也称为CWM Recovery,具体它有什么用处呢?请看关于Google Android平台的ClockworkMod Recovery恢复模式.而对于众多的CWM Recovery版本,它们的功能指令基本相同,对于具体的说明,我们已于ClockworkMod Recovery恢复模式的指令详解一文详细列出 对大多数用户而言,我们最常使用的Clockworkmo…
lockworkMod Recovery,它也被称为Clockwork与CWM,它是装载Google Android操作系统设备的一个自定义的Recovery恢复模式,它可以使得相关Android设备具备更高级的恢复.复位.安装.维护等指令 关于Android平台的Recovery恢复模式: 理论上,所有的Android设备都会预装载一个Recovery恢复模式控制台,我们也可以称之为官方或原始Recovery恢复模式,它是相关设备内置的基本的一个部分,可以在设备启动时进入.它提供了一些基本的指…
转自android recovery模式及ROM制作 1.总述 为了方便客户日后的固件升级,本周研究了一下android的recovery模式.网上有不少这类的资料,但都比较繁杂,没有一个系统的介绍与认识,在这里将网上所找到的和自己通过查阅代码所掌握的东西整理出来,给大家一个参考! 2.Android启动过程 在这里有必要理一下android的启动过程: 图1 android启动过程 系统上电之后,首先是完成一系列的初始化过程,如cpu.串口.中断.timer.DDR等等硬件设备,然后接着加载b…
原文网址:http://leox.iteye.com/blog/975303 (muddogxp 原创,转载请注明) Recovery简介 Android利用Recovery模式,进行恢复出厂设置,OTA升级,patch升级及firmware升级. 升级一般通过运行升级包中的META-INF/com/google/android/update-script脚本来执行自定义升级,脚本中是一组recovery系统能识别的UI控制,文件系统操作命令,例如write_raw_image(写FLASH分区…
Android启动模式 (1)Task:与Android系统是个多任务的系统中的任务是不同的.后者更倾向于多进程和多线程来说的,而这里的任务与application(应用程序)和activity(活动)有关系. 从activity的角度说,任务就是activity的集合,共同完成一项工作.这些activity排列在一个栈中,这就有了下面的概念,Back栈. (2)Back Stack(后退栈):activity按照打开的顺序排列,形成的栈,通常我们也可以说是任务栈.如果用户长时间离开task(比…
一.概述 android夜间模式实现分为两大类 重启activity的实现 不重启activity的实现 二.正文 1.重启activity实现夜间模式[在界面文件中的实现部分] 1.1在attrs.xml文件中定义如下属性 <?xml version="1.0" encoding="utf-8"?> <resources> <!--Activity--> <attr name="rootViewBgColor&q…
android MVP模式介绍与实战 描述 MVP模式是什么?MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负责显示. MVC和MVP的区别? 为什么会出现MVP模式呢?这是因为原有的MVC模式有一些短板.比如在android开发中,activity充当着MVC中Controller的角色,但是在实际开发中处理view的逻辑和角色.当业务界面复杂时我的activity会显得很庞大.于是出现了M…
SQL Server数据库有三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式: 1.Simple 简单恢复模式, Simple模式的旧称叫”Checkpoint with truncate log“,其实这个名字更形象,在Simple模式下,SQL Server会在每次checkpoint或backup之后自动截断log,也就是丢弃所有的inactive log records,仅保留用于实例启动时自动发生的instance recovery所需的少量log,这样做的好处是log文件…
Android MVC模式 下面是我对Android MVC模式的理解 Model 模型层 包括实体模型层,存放程序中调用的实体. 业务模型层,存放程序中调用的业务逻辑.   View 显示层  Android很好的将显示层抽离,并放入res/目录的中以XML形式体现. 包括 main.xml 布局文件.  string.xml 存放常量. drawable 存放使用的图片文件.   Control 控制层 Control层是Activity的职责.你只有告诉Activity做什么.怎么做那是模…
转自http://segmentfault.com/blogs,转载请注明出处Android MVP Pattern Android MVP模式\[1\]也不是什么新鲜的东西了,我在自己的项目里也普遍地使用了这个设计模式.当项目越来越庞大.复杂,参与的研发人员越来越多的时候,MVP模式的优势就充分显示出来了. 导读:MVP模式是MVC模式在Android上的一种变体,要介绍MVP就得先介绍MVC.在MVC模式中,Activity应该是属于View这一层.而实质上,它既承担了View,同时也包含一…
主要学习这位大神的博客:简而易懂 Android MVP模式 简单易懂的介绍方式 https://segmentfault.com/a/1190000003927200…
Android 启动模式--任务(Task)--桟 的误区 写这篇文章是因为前几天的一次面试,面试官说SingleInstance模式会新建一个桟,而SingleTask不会.首先不说这个对不对(非要说对错的话,那就是错.),因为这句话是含糊不清的.桟?只的是返回桟? 还是任务桟?有没有考虑taskAffinity属性?所以笼统的那样说是不对的.这篇文章一是为了记录,二是为了说清楚----任务(Task)& 桟(返回桟,任务桟). 概念 桟(堆栈:stack) 栈的基本特点: 先入后出,后入先出…
SQL Server数据库有三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式: 1.Simple 简单恢复模式, Simple模式的旧称叫”Checkpoint with truncate log“,其实这个名字更形象,在Simple模式下,SQL Server会在每次checkpoint或backup之后自动截断log,也就是丢弃所有的inactive log records,仅保留用于实例启动时自动发生的instance recovery所需的少量log,这样做的好处是log文件…
android Run模式也会出现"Waiting for debugger"的解决方法 出现“waiting for debugger”窗口是在debug模式下运行出现的.但是,今天我在run模式下也出现了此窗口,并且一直如此.卸载程序重新运行也是如此.android真机在脱离电脑的情况下,会一直死在“waiting for debugger”的. run 后eclipse 就直接跳出 The JAR /home/xxx/.../android.jar has no source a…
在Android文件模式中,非常欣赏Android统一资源管理模式的思想: 分为系统应用APP(以包名为唯一标识) 和普通应用APP(以包名为唯一标识) 每个包名下有自己的 cache files databases 在AndroidManifest.xml清单文件中增加文件操作权限: <!-- 增加权限文件操作相关权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE&qu…
Android MVP模式简单易懂的介绍方式 (一) Android MVP模式简单易懂的介绍方式 (二) Android MVP模式简单易懂的介绍方式 (三) 讲完M和P,接下来就要讲V了.View也很好理解,就是把UI需要做的事情,通过接口暴露出来.那么UI要做什么事情,无非就是对UI控件的操作(这里是清空输入).还有登陆成功或者失败的操作嘛.因此,我们可以这样写. public interface ILoginView { void onClearText(); void onLoginR…
Android MVP模式简单易懂的介绍方式 (一) Android MVP模式简单易懂的介绍方式 (二) Android MVP模式简单易懂的介绍方式 (三) 上一篇文章我们介绍完了Model的创建和思路,那么这一篇文章我们继续借着讲Presenter.Presenter就是把原来写在Activtiy中的业务逻辑抽象出来的接口,然后再写一个类去实现这个业务逻辑的接口.然后,由于Presenter其实是作为View和Model之间沟通的桥梁,而模块之间的沟通是通过什么沟通呢?当然是接口啦.那么登…
Android MVP模式简单易懂的介绍方式 (一) Android MVP模式简单易懂的介绍方式 (二) Android MVP模式简单易懂的介绍方式 (三) 最近正在研究Android的MVP模式.看了很多文章,基本上都是长篇大论,一堆理论.但这里,我们不从理论出发,我们从最最原始实用的介绍出发.那么,这里我默认大家都是有基本的MVP理论知识的,如果没有,可以稍微看下MVP的基本理论.当然,不看基本理论,对于阅读本文也是没有障碍的.这里我们只需要知道一个最最核心的理论: MVP把Activi…
Pay正式启用 支付宝们还好吗" title="Android Pay正式启用 支付宝们还好吗"> 苹果发布会上能够真正让人眼前一亮的产品并不多,但对于"死敌"谷歌来说,却依然不想让苹果抢了所有风头.谷歌宣布,从9月10开始,将通过美国逾100万个商户面向Android设备推出简单易用的支付应用Android Pay.要知道,Android Pay原计划是在9月16日发布,现在足足提前了6天! 相比依赖于苹果设备的Apple Pay,普及率更高的安卓…
public static void start12hAlarm() { int seconds = TIMERLENGTH; ECMLog.i_ecms(CLASS_TAG, " start12hAlarm is called ." ); AlarmManager manager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE); Intent intent = new Intent(mContext,…
在Android里,有4种Activity的启动模式并分别介绍下: standard singleTop singleTask singleInstance AndroidManifest.xml配置android:launchMode属性 1.standard: 默认启动模式. 每次都会创建一个实例,每个任务栈里面都可以使用. 2.singleTop: 系统会按照singleTop启动模式处理跳转行为.跳转时系统会先在栈结构寻找是否有一个Activity实例正位于栈顶,如果有则不在生成新的,而…
Android中的启动模式(下) 在这篇文章中,我会继续跟大家分享有关于Android中启动模式的相关知识.当然,如果对这个启动模式还不完全了解或者没有听过的话,可以先看看我之前写的有关于这个知识点的入门篇Android的启动模式(上).好了,言归正传,在上一篇已经介绍过,activity在栈中默认不能重排,因此,应用中的一个activity可能被多次实例化并且压入同一个栈中,如图所示: 如果此时使用back键返回,activity的每个实例都将会按照打开的顺序重新出现.这势必会导致用户生体验效…
    最近在学习Android的Recovery模式,感觉它和Windows的安全模式很相似.两者的工作原理都是只加载少量的系统组件(内核是必须的),使系统运行在最小模式,这样就可以在不影响当前系统运行的情况下(因为运行时组件少而简单,对于Android,即使把/system/lib下的共享库都删掉,也不会影响当前系统的正常运行)方便地对外部存储设备(硬盘或Flash)的内容进行操作,比如替换或删除某个目录或文件,完成系统的升级或恢复. Windows 安全模式: http://baike.b…
首先,这是从 一个开源网站转载的,觉得写得不错,对我们之前理解的activity的启动模式是一个新的理解方式,并给出实际的应用场景. 任务栈是什么 任务栈Task,是一种用来放置Activity实例的容器,他是以栈的形式进行盛放,也就是所谓的先进后出,主要有2个基本操作:压栈和出栈,其所存放的Activity是不支持重新排序的,只能根据压栈和出栈操作更改Activity的顺序. 启动一个Application的时候,系统会为它默认创建一个对应的Task,用来放置根Activity.默认启动Act…
 1 职责链模式 职责链模式的意图为:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系.将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止.使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系.将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止.职责链模式的结构图如下: 在ANDROID的输入管理系统中提交输入事件到视图时使用了职责链模式,其类图所示: 类图中的ViewRootImpl类的内部类EarlyPost…
1. 问题引入: 前面我们是使用方法 降低屏幕亮度(不常用) 和 替换theme,两者都是针对Activity的背景进行白天.夜间模式的交换,但是如果我们显示的是Html的内容,这个时候改怎么办? 分析:首先加载Html页面肯定是要用到WebView的,通过loadUrl的方法可以把html页面显示到webView,我们知道Android可以与JavaScript进行交互,就是说可以在JavaScript中调用Android的代码,也可以在Android中调用JavaScript代码. 所以就有…
转自:http://zhengxiaoyong.me/2016/09/05/Android%E8%BF%90%E8%A1%8C%E6%97%B6Crash%E8%87%AA%E5%8A%A8%E6%81%A2%E5%A4%8D%E6%A1%86%E6%9E%B6-Recovery/ 简介 App Crash的恢复,这个想法很早之前就有,目前有些时间就实现了一把,主要是对App运行时发生Crash后,对Activity的堆栈和数据进行恢复,或者重启应用,或者重启并清空缓存,避免因本地的数据类型或格…
StrictMode类是Android 2.3 (API 9)引入的一个工具类,可以用来帮助开发者发现代码中的一些不规范的问题,以达到提升应用响应能力的目的.举个例子来说,如果开发者在UI线程中进行了网络操作或者文件系统的操作,而这些缓慢的操作会严重影响应用的响应能力,甚至出现ANR对话框.为了在开发中发现这些容易忽略的问题,我们使用StrictMode,系统检测出主线程违例的情况并做出相应的反应,最终帮助开发者优化和改善代码逻辑. 官网文档:http://developer.android.c…