以快板之名说Android 应用程序电源管理
当里个当,当里个当。Android开发UE(用户体验)为导向,首要任务便是省电量。
当里个当,当里个当。有一设备立足于墙边,这个设备唤固定电话。你的app造成这样,用户很快把你弃墙角。你咆哮耗电奈何与我,奈何android设备记录此。你若是那耗电app,用户毫不犹豫卸载你。
当里个当,当里个当。开发需注意以下几点:
①当里个当,当里个当。不要绞尽脑汁设算法,后台服务不要死劲跑。
当里个当,当里个当。决定高手喜欢来挑战,精巧算法带来征服感。高手实现布隆过滤器(一个庞大精巧的类哈希表,多用于在服务器端如垃圾邮件查找),内存复杂远远于平时(HashMap),因此实现变得不容易。于是App发布之后,出现用户抱怨电量大,并且经常出现大问题,老老实实换成了哈希。
当里个当,当里个当。于是请让鄙人总结之,算法目的是为了用户,为何不用简单(算法)做到位?
②当里个当,当里个当。service固可好,service固可棒,service效应真的不一样。service目的用于监控变化, 倘若后台服务任意跑,用户耗电量刷哗哗跑。因此用BroadcastReceiver监听控制,比如安装卸载等操作。这样cpu和内存量,由此电量大大的减少。
③当里个当,当里个当。网络请求固可好,网络请求固可棒。网络请求真的不一般。网络请求建议请做好。
当里个当,当里个当。 无严苛的实时性要求,恳请您延长轮播间隔,例如6小时请求一次,同时间隔服务器(在线)更新。
当里个当,当里个当。使用成熟的推送服务,个推特推百度效果不一般。
④当里个当,当里个当。网络请求不要太频繁。系统组件屏幕最耗电,其次网络耗电不一般。网络出错会降低UE,而且还会耗费了电量。恳请数据的预取,数据压缩的算法,来降低网络请求次数。
当里个当,当里个当。 总而言之一句话,开发过程中,替用户思考是否做到了“流畅、友好、省电”效果,以保证App拥有不错的UE(用户体验)。
以快板之名说Android 应用程序电源管理的更多相关文章
- Android应用程序版本号管理(官方文档中文版)
在应用程序的 升级/维护 策略中, 版本是一个关键的组成部分. 用户需要了解在他们的设备上所安装的应用程序的版本的特定信息, 以及已安装程序的升级版本可用的情况. 其他应用程序 - 作为同一个套件中发 ...
- android wake lock 电源管理简单学习
需要配置清单文件:<uses-permission android:name="android.permission.WAKE_LOCK" /> 也可以参考我之前写的这 ...
- android在程序中打开另一个程序
在开发android应用的时候,在一些情况下要有前置条件,比如这边所说的要启动时要确保别的应用程序服务已经打开 或者在操作中启动别的应用等. 先来一段google上的代码: 1. 已知包名和类名的情 ...
- Android卸载程序之后跳转到指定的反馈页面
一个应用被用户卸载肯定是有理由的,而开发者却未必能得知这一重要的理由,毕竟用户很少会主动反馈建议,多半就是用得不爽就卸,如果能在被卸载后获取到用户的一些反馈,那对开发者进一步改进应用是非常有利的.目前 ...
- 使用 Eclipse PhoneGap 构建 Android 应用程序入门
Eclipse 是一种支持多种技术的开源集成开发环境 (IDE),但本文重点介绍 Java 支持,这也是 Android 应用程序的“母语”.Android 是 Google 发布的开源移动操作系统. ...
- IONIC 开发的Android应用程序签名(或重新签名)详解
完全通过DOS命令来完成apk签名 给apk签名一共要用到3个工具,或者说3个命令,分别是:keytool.jarsigner和zipalign,下面是对这3个工具的简单介绍: ...
- Eclipse+CDT+GDB调试android NDK程序(转)
Eclipse+CDT+gdb调试android ndk程序 先介绍一下开发环境,在这个环境下,up主保证是没有问题的. ubuntu 11.10 eclipse 3.7(indego) for ja ...
- Android应用程序窗口(Activity)的视图对象(View)的创建过程分析
从前文可知道,每一个Activity组件都有一个关联的Window对象,用来描述一个应用程序窗口.每一个应用程序窗口内部又包含有一个View对象,用来描述应用程序窗口的视图.应用程序窗口视图是真正用来 ...
- Android开发之 Android应用程序详细解析
我们继续的沿用上一篇所建立的应用. Android应用程序可以分为:应用程序源代码(.java),应用程序描述文件(.xml),各种资源. 可以这么理解: 安卓应用程序,通过java代码来实现其业务逻 ...
随机推荐
- Android学习之路(转载)
原文地址:http://stormzhang.github.io/android/2014/07/07/learn-android-from-rookie/ 硬件 电脑–推荐Mac 首先声明我不是果粉 ...
- Codeforces Round #281 (Div. 2) A. Vasya and Football 模拟
A. Vasya and Football 题目连接: http://codeforces.com/contest/493/problem/A Description Vasya has starte ...
- 关于.net core程序的部署
最近发布.net core程序的时候,发现它是可以独立部署的,它支持如下两种部署方式: 依赖框架的部署FDD.只发布我们的程序,运行前用户需要手动安装.net core runtime. 独立部署SC ...
- Serilog中的Jobject/Jtoken对象序列化的问题
今天使用Serilog打印object对象的时候,发现Jtoken对象输出成 [[[]] 这种形式了,本来以为是传入参数的问题,确认了几遍后发现确实是Serilog输出的问题.github上也有人提出 ...
- STM32 F4 General-purpose Timers for Periodic Interrupts
STM32 F4 General-purpose Timers for Periodic Interrupts
- 【Go命令教程】7. go run
Go 源码文件包括:命令源码文件.库源码文件 和 测试源码文件.其中,命令源码文件 总应该属于 main 代码包,且在其中有无参数声明.无结果声明的 main 函数.单个命令源码文件可以被单独编译,也 ...
- Java -verbose[:class|gc|jni] 转 ----JAVA源码分析
http://blog.csdn.net/tenderhearted/article/details/39642275 http://www.cnblogs.com/iceAeterNa/p/4876 ...
- CTreeCtrl和CListCtrl失去焦点时高亮选中项
设置CTreeCtrl的Always Show Selection:TrueCListCtrl的Always Show Selection:False在NM_CUSTOMDRAW事件中添加如下代码: ...
- xcode调试查看变量的值
对于IPhone开发/XCode的初学者,如何在调试时查看变量的值是很头痛的事情.因为Xcode的expression 经常无法正确显示变量的值.但是强大的GDB可以很方便的帮我们查看变量的值. 当执 ...
- iOS6新特征:UICollectionView介绍-非常棒 -转
传送门:http://www.devdiv.com/forum.php?mod=viewthread&tid=128378