DayDream简单分析(一)
Daydream是Android 4.2的一个新特性。
可以将DayDream看作是一个互动式的屏幕保护程序,在设备闲置或充电时,可以显示特定的界面,比如一张图片,一个网页,任何android设备支持的界面显示。
Google Currents就是个很好的例子,这是一个移动杂志阅读应用,当设备闲置时,在用户的设备上输出杂志样式的文章。在Daydream模式下,会以聚合的形式显示一个看起来非常有趣的故事,点击这个故事,会全屏显示,再次点击,会打开Currents应用。
OK,那么我们现在就着手书写一个简单的DayDreamDemo:
1,首先我们要了解DayDream的一些主要方法:
Daydream的实现
Daydream是通过android.service.dreams.DreamService子类来实现的,
这是Daydream一些关键重写方法:
- onAttachedToWindow():初始设置
- onDreamingStarted():启动动画和计时器
- onDreamingStopped():停止动画
- onDetachedFromWindow():清除你在onAttachedToWindow()中构建的所有东西
设置Daydream的一些重要方法:
- setContentView():设置Daydream场景
- setInteractive(boolean):默认情况下,用户触摸时Daydream会退出。如果你希望与用户交互,则调用setInteractive(true)
- setFullscreen(boolean):隐藏状态栏
- setScreenBright(boolean):默认情况下,Daydream是全亮度模式,设置为false会降低屏幕亮度
2,书写一个Daydream的继承类,API最低为17
import android.service.dreams.DreamService;public class DreamOne extends DreamService{@Overridepublic void onAttachedToWindow() {// TODO Auto-generated method stubsuper.onAttachedToWindow();setContentView(R.layout.activity_main);//这里为了演示Daydream的简单效果只是加载一个静态布局setInteractive(false);//是否可以互动,默认falsesetFullscreen(true);//是否全屏,隐藏状态栏}@Overridepublic void onDreamingStarted() {// TODO Auto-generated method stubsuper.onDreamingStarted();}@Overridepublic void onDreamingStopped() {// TODO Auto-generated method stubsuper.onDreamingStopped();}@Overridepublic void onDetachedFromWindow() {// TODO Auto-generated method stubsuper.onDetachedFromWindow();}
}
上面的代码片段中 onAttachedToWindow()中加载了一个静态布局。
3,配置AndroidManifest.xml文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.daydreamdemo"android:versionCode="1"android:versionName="1.0" ><uses-sdkandroid:minSdkVersion="17"android:targetSdkVersion="18" /><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ><serviceandroid:name=".DreamOne"android:exported="true"android:label="@string/app_name" android:icon="@drawable/ic_launcher"><span style="color:#ff0000;"> <intent-filter><action android:name="android.service.dreams.DreamService" /><category android:name="android.intent.category.DEFAULT" /></intent-filter></span></service></application>
</manifest>
intent-filter保证了daydream会被系统正确寻找到。
最后,代码结构文件,大家可以看到非常简单。
这样,一个最简单的DayDream的静态图片展示完成了。
DayDream简单分析(一)相关推荐
- R语言splines包构建基于logistic回归的自然样条分析:南非心脏病数据集、非线性:基函数展开和样条分析、你简单分析的不重要特征,可能只是线性不显著、而非线性是显著的
R语言splines包构建基于logistic回归的自然样条分析:南非心脏病数据集.非线性:基函数展开和样条分析.你简单分析的不重要特征,可能只是线性不显著.而非线性是显著的 目录
- [EntLib]微软企业库5.0 学习之路——第七步、Cryptographer加密模块简单分析、自定义加密接口及使用—上篇...
在完成了后,今天开始介绍企业库中的新模块:Cryptographer(加密模块),这个模块在日常的大多数项目的作用非常重要,例如:网站会员密码.身份证号.网站配置等,通过对信息进行加密可以保证项目数据 ...
- FFmpeg资料来源简单分析:libswscale的sws_getContext()
===================================================== FFmpeg库函数的源代码的分析文章: [骨架] FFmpeg源码结构图 - 解码 FFmp ...
- howdoi 简单分析
对howdoi的一个简单分析. 曾经看到过下面的这样一段js代码: try{doSth(); } catch (e){ask_url = "https://stackoverflow.com ...
- Mac与Phy组成原理的简单分析
Mac与Phy组成原理的简单分析 2011-12-28 15:30:43 //http://blog.chinaunix.net/uid-20528014-id-3050217.html 本文乃fir ...
- python做数据可视化的代码_Python数据可视化正态分布简单分析及实现代码
Python说来简单也简单,但是也不简单,尤其是再跟高数结合起来的时候... 正态分布(Normaldistribution),也称"常态分布",又名高斯分布(Gaussiandi ...
- ASIHTTPRequest源码简单分析
2019独角兽企业重金招聘Python工程师标准>>> 1.前言 ASIHttprequest 是基于CFNetwork的,由于CFNetwork是比较底层的http库,功能比较少, ...
- Hessian 源码简单分析
Hessian 源码简单分析 Hessian 是一个rpc框架, 我们需要先写一个服务端, 然后在客户端远程的调用它即可. 服务端: 服务端通常和spring 做集成. 首先写一个接口: public ...
- python预测股票价格tushare_用tushare对股票进行简单分析
用tushare对股票进行简单分析(仅供交流学习) import numpy as np import pandas as pd import matplotlib.pyplot as plt imp ...
最新文章
- myeclipse8.6安装svn
- 47.2. 配置 Tomcat 服务器
- 为什么 char 数组比 String 更适合存储密码?
- Delphi指针大全
- Spring Cloud GatewayAPI网关服务
- go中如何使用easyjson_如何在 Go 中编写无 Bug 的 Goroutines?
- sql下员工工牌(YC0001)的简单实现和一些特殊查询
- 447. 回旋镖的数量
- 数据结构之选择排序:堆排序
- VB.NET项目技术总结
- vue表单实现输入框控制输入小数点后两位
- 学习C++项目——select模型,poll模型和epoll模型
- 什么样的人适合3D打印培训课程——宁波清车3D打印培训
- Android编程怎么打开,安卓手机如何开启开发者模式?简单三步骤教你解决!
- 社会性动物(艾略特•阿伦森)
- 一、Java面试基础之面向对象的特征:继承、封装和多态(原创实例)
- u9搜索引擎推送破解版
- html边框背景图片,css3 边框、背景、文本效果的实现代码
- 超高学费一年八万!华中师范大学伍伦贡联合研究院计算机硕士
- dbo.GetJsonValue函数
热门文章
- Open_cv中常用函数的原型及参数解释(一)
- left函数未定义_access中LEFT函数未定义的解决方案\表达式中'left'函数未定义。
- 【题解】【AcWing】1526. 洗牌机
- vue+element自动计算天数
- python实现英文新闻摘要自动提取_利用Python实现摘要自动提取,完美瘦身只需一行代码...
- 微信HTML5页面设计建议
- poi怎么设置某个单元格为下拉框_java excel 多选下拉列表设置
- 转载---SQL Server XML基础学习之7--XML modify() 方法对 XML 数据中插入、更新或删除...
- SEM竞价员一天的工作流程了解一下?
- 2019年8月21日 星期三(韩天峰的个人简历)