基于Android 的智能家居终端设计与实现
摘 要: 在深入分析Android 的系统架构及其应用程序组成的基础上,设计和实现了一款基于Android 的智能家居终端。终端主要包括主控制模块、信号处理模块、网络管理模块、媒体流管理模块及信息存取模块等功能模块。较好地融合了Android 与智能家居终端,具有较强的实用价值和开发指导意义。关键词: 智能家居;Android 系统;家居安防;可视对讲;智能终端
自2007年Google 推出开源手机操作系统Android 以来,Android 的应用开发一时间风靡全球,各高科技领域应用都在向Android 进军。Android 的盛行取决于其独特的优势。首先,Android 是一款基于Linux 内核的开源系统,它具有操作系统、中间件和关键应用程序。对第三方应用开发完全开放、人员具有较大的自由度[1]。其次,Android 应用程序的开发采用Java 语言,通过应用框架层提供的API ,开发简单、周期短。第三,Android 具有很强的开放性和灵活性。虽然现在市场上已经出现各种各样的智能家居终端,但Android 的出现及其广泛应用,使得很多智能家居厂商正投入很大的人力物力进行研究开发基于Android 的智能家居终端。1 Android 系统1.1 Android 架构 Android是一个包括操作系统、中间件和关键应用程序的移动设备软件堆。其作为一个开发式的系统平台,包含了众多的功能和庞大的基于Linux 的代码,在用户空间又分为本地代码(C/C++)和Java 代码。Android 系统可以分为以下各层次: 自底向上依次为Linux 操作系统及其驱动层、本地代码框架和Java 虚拟机层、Java 框架层和Java 应用程序层[2]。在各层之间存在相应的分界线接口。。
作为开放式的系统,Android 提供了丰富的组件和视图控件。大部分的开发只需要调用Android 应用框架层提供的API 就可以方便地完成,并且在Android 的SDK 中提供了丰富的实例供参考学习,使得应用开发简单易行。Android 各层次的功能如表1所示。
1.2 Android 应用程序的组成 一个程序可以调用另外一个程序的程序片段。这是Android 程序框架的基本设计理念。例如,在Windows 操作系统中,资源管理器可以浏览图片文件,当浏览到这个图片文件时,双击该图片文件,便启动图片浏览软件。Android 的程序理念便是如此, 所不同的是, 在Windows 中,打开图片会启动图片浏览软件的全部功能,虽然实际上只是需要查看图片;Android 中是把一个程序的功能分为各种不同的程序片段, 每个程序片段都能单独启动。 Android应用程序由Activity 、Service 、Broadcast Receiver和Content Provider 四大组件构成。这四大组件也称为Android 的四种类型的程序片段,且每种类型都可以独立运行。 Activity在四大组件中最复杂。从视觉上看,一个Activity 占据当前的窗口,响应所有窗口事件,具有控件、菜单等界面元素,为用户提供一个与界面交互的平台。从内部逻辑来看,Activity 需要为了保持各个界面状态,需要做很多持久化的工作,还需要妥善管理生命周期和一些转跳逻辑。 Service就是剥离了界面的Activity ,都是封装有一个完整的功能逻辑实现,只不过Service 不抛头露脸,默默提供后台服务。举例,当用户处理其他问题时,服务可以播放背景音乐,或者可以从网上获取数据、计算、提高,提供给活动所需要的结果。 Broadcast Receiver 只能接收广播,一个广播可以有很多广播接收器对它认为重要的通知作出反应。Android 系统提供了一个sendBroadcast ()方法,Application Framework内部调用该方法发送广播,比如有新短信息、有来电等广播消息,Broadcast Receiver会响应这些系统消息的独立执行单元[4]。 Content Provider提供了一套特殊的可供其他应用使用的数据。这些数据可以存储在文件系统中、SQLite 数据库中或者其他有意义的形式。实现了一套标准的允许其他用户检索、储存数据的方法。通过使用ContentProvider 的实例,调用它的方法。 Intent是Android 中一个特殊的类,组
件之间的通讯,由Intent 协助完成。Intent 负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android 则根据此Intent 的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent 在这里起着实现调用者与被调用者之间的解耦作用,。
2 智能家居终端2.1 终端主要功能 智能家居终端的主要功能如下[5]: (1)可视对讲。室内机与门口机进行可视对讲;室内机可以监视门口情况;访客留影;两个或多个室内机进行视频对话。 (2)家居安防。防区设定:对室内和室外安装的监视器进行独立的设定;报警:监视器侦测到异常发出报警;家居安防模式设定:外出、在家、就寝等。 (3)家居控制。灯光控制;窗帘控制;空调控制;电源控制;燃气阀控制;电梯控制。
讯。天气预报;万年历;常用 (4)生活资
基于Android 的智能家居终端设计与实现
摘 要: 在深入分析Android 的系统架构及其应用程序组成的基础上,设计和实现了一款基于Android 的智能家居终端。终端主要包括主控制模块、信号处理模块、网络管理模块、媒体流管理模块及信息存取模块等功能模块。较好地融合了Android 与智能家居终端,具有较强的实用价值和开发指导意义。关键词: 智能家居;Android 系统;家居安防;可视对讲;智能终端
自2007年Google 推出开源手机操作系统Android 以来,Android 的应用开发一时间风靡全球,各高科技领域应用都在向Android 进军。Android 的盛行取决于其独特的优势。首先,Android 是一款基于Linux 内核的开源系统,它具有操作系统、中间件和关键应用程序。对第三方应用开发完全开放、人员具有较大的自由度[1]。其次,Android 应用程序的开发采用Java 语言,通过应用框架层提供的API ,开发简单、周期短。第三,Android 具有很强的开放性和灵活性。虽然现在市场上已经出现各种各样的智能家居终端,但Android 的出现及其广泛应用,使得很多智能家居厂商正投入很大的人力物力进行研究开发基于Android 的智能家居终端。1 Android 系统1.1 Android 架构 Android是一个包括操作系统、中间件和关键应用程序的移动设备软件堆。其作为一个开发式的系统平台,包含了众多的功能和庞大的基于Linux 的代码,在用户空间又分为本地代码(C/C++)和Java 代码。Android 系统可以分为以下各层次: 自底向上依次为Linux 操作系统及其驱动层、本地代码框架和Java 虚拟机层、Java 框架层和Java 应用程序层[2]。在各层之间存在相应的分界线接口。。
作为开放式的系统,Android 提供了丰富的组件和视图控件。大部分的开发只需要调用Android 应用框架层提供的API 就可以方便地完成,并且在Android 的SDK 中提供了丰富的实例供参考学习,使得应用开发简单易行。Android 各层次的功能如表1所示。
1.2 Android 应用程序的组成 一个程序可以调用另外一个程序的程序片段。这是Android 程序框架的基本设计理念。例如,在Windows 操作系统中,资源管理器可以浏览图片文件,当浏览到这个图片文件时,双击该图片文件,便启动图片浏览软件。Android 的程序理念便是如此, 所不同的是, 在Windows 中,打开图片会启动图片浏览软件的全部功能,虽然实际上只是需要查看图片;Android 中是把一个程序的功能分为各种不同的程序片段, 每个程序片段都能单独启动。 Android应用程序由Activity 、Service 、Broadcast Receiver和Content Provider 四大组件构成。这四大组件也称为Android 的四种类型的程序片段,且每种类型都可以独立运行。 Activity在四大组件中最复杂。从视觉上看,一个Activity 占据当前的窗口,响应所有窗口事件,具有控件、菜单等界面元素,为用户提供一个与界面交互的平台。从内部逻辑来看,Activity 需要为了保持各个界面状态,需要做很多持久化的工作,还需要妥善管理生命周期和一些转跳逻辑。 Service就是剥离了界面的Activity ,都是封装有一个完整的功能逻辑实现,只不过Service 不抛头露脸,默默提供后台服务。举例,当用户处理其他问题时,服务可以播放背景音乐,或者可以从网上获取数据、计算、提高,提供给活动所需要的结果。 Broadcast Receiver 只能接收广播,一个广播可以有很多广播接收器对它认为重要的通知作出反应。Android 系统提供了一个sendBroadcast ()方法,Application Framework内部调用该方法发送广播,比如有新短信息、有来电等广播消息,Broadcast Receiver会响应这些系统消息的独立执行单元[4]。 Content Provider提供了一套特殊的可供其他应用使用的数据。这些数据可以存储在文件系统中、SQLite 数据库中或者其他有意义的形式。实现了一套标准的允许其他用户检索、储存数据的方法。通过使用ContentProvider 的实例,调用它的方法。 Intent是Android 中一个特殊的类,组
件之间的通讯,由Intent 协助完成。Intent 负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android 则根据此Intent 的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent 在这里起着实现调用者与被调用者之间的解耦作用,。
2 智能家居终端2.1 终端主要功能 智能家居终端的主要功能如下[5]: (1)可视对讲。室内机与门口机进行可视对讲;室内机可以监视门口情况;访客留影;两个或多个室内机进行视频对话。 (2)家居安防。防区设定:对室内和室外安装的监视器进行独立的设定;报警:监视器侦测到异常发出报警;家居安防模式设定:外出、在家、就寝等。 (3)家居控制。灯光控制;窗帘控制;空调控制;电源控制;燃气阀控制;电梯控制。
讯。天气预报;万年历;常用 (4)生活资