基于android的图片阅读器的设计与实现计算机毕业设计论文(编辑修改稿)内容摘要:
d的构成和工作流程 图 22 Android的构成和工作流程 在 Android SDK 中,定义了让开发者使用与核心应用程序相同 API 的权限应用程序框架是为了要简化组件的重新利用而设计的,应用程序可 以发布功能为其它应用程序所使用。 但是,这要受限于应用程序架构的安全机制,使用者以用同样的机制来新增、置换组件。 目前所有的应用程序是由服务及系统来组成,包含有 : (l)一套强大和可扩展的视图系统 :用来建构一个应用程序的基本组件,包了在开发系统画面时,常用的列表、网格、文本框、按钮等控制项,甚至是内嵌的 Web 浏览器。 (2)内容提供者 :使应用程序可以访问另一个应用程序的数据 (如联系人数库 ),或者共享它们自己的数据。 (3)资源管理器 :提供各种非程序代码的资源让应用程序去使用。 例如 :本字符串、图形文件或排版相关的布局文件。 (4)通知管理器 :提供应用程序在状态栏中显示应用程序自定义的提示信息。 (5)活动管理器 :管理所有应用程序的生命周期及提供常用的导航回退功能。 例如 :启动应用程序要用到的资源准备及关闭应用程序时释放内存及相关资源等工作。 找毕业设计、项目源码、编程视频,就上码农网 manong365 6 (6)视窗管理器 :用来管理所有启动程序的视窗。 (7)位置管理器 :用来管理地图服务的相关功能。 (8)电话管理器 :用来管理用户拨打与接听电话的相关功能。 (9)包管理器 :管理所有安装在 Android 系统内的包。 在 Android 中包含一些 C/C++的类库,这些类库能被 Android 系统中不同的组件来使用。 开发者可以通过应用程序框架使用这些功能。 部分核心类库列表如下 : (1)surface Manager:主要的功能是让开发者可以去存取 /显示系统及管理的功能,在 [显示 ]与 [存取操作 ]间的对应、互动以及实现无接缝的 2D/3D 多应用程序之间的整合。 例如 :在 2D、 2D 显示上的合成、叠合动作。 (2)3Dlibraries:主要是依 规范所定义的 3D 绘图引擎。 该库使用硬件加速 (当硬件可用时 ),可以将硬件的 3D功能做最佳化 的处理显示。 (3)SGL:主要是处理有关显示 2D 方面的绘图引擎。 (4)Media Frame work:主要是以 packetVideo 公司的 OpenCORE 为基础所发展的多媒体类库,该库支持回放和录制大量流行的音视频格式和静态图片。 例如 :MPEG MP AAC、 AMR、 JPG、 PNG、 GIF 等格式 (5)Free Type:主要是用来显示点阵图和处理向量字形的。 (6)SSL:(secureSocketsuyer),中文名为“安全套接层协议层”,它是网景公司提出的基于 WEB 应用的安全协议 ,当前版本为。 SSL协议指定了一种在应用程序协议(如 HTTP、 Tele、 NMTP 和 FTP 等 )和 TCP/IP 协议之间提供数据安全性分层的机制,它为 TCP/IP 连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。 它已被广泛地用于 Web 浏览器与服务器之间的身份认证和加密数据传输。 SSL 协议位于TCP胆协议与各种应用层协议之间,为数据通讯提供安全支持。 SSL协议可分为两层 :SSL记录协议 (SSL Record Proto col):它建立在可靠的传输协议 (如 TCP)之上,为高层协议提供数据封装 、压缩、加密等基本功能的支持。 SSL 握手协议 (SSL Hand shake proto col):它建立在 SSL 记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。 SSL 协议提供的服务主要有 :①认证用户和服务器,确保数据发送到正确的客户机和服务器。 ②加密数据以防止数据中途被窃取。 ③维护数据的完整性,确保数据在传输过程中不被改变。 (7)SQLite:SQLite 是一套开放性的关联式资料库,能够被所有应用程序使用的轻量级的关系数据库引擎。 (8)web Kit:是一个 先进的网页浏览器引擎,被用来构建 Android 浏览器和内嵌的web 视图,也可以让开发者利用这个引擎来做不同的应用。 (9)lib c:就是一个 BSD 标准 C 类库。 但是,针对 Linux 嵌入式装置进行过最佳化的调整。 虽然 Android 是用 Java 语言来开发、撰写应用程序,但却不使用 Java 运行时组件来执行 Java 程序,而是使用了由 Google 自行研发的 Android 运行时组件来执行程序。 Android 运行时组件包括两个重要的部分,一个是核心类库,另一个是 Dalvik 虚拟机。 开发环境的搭建 安装并配置 JDK 6 首先需要的是 JDK。 Android SDK 需要 JDK 5 或更高的版本,我们使用 JDK 6 来开发。 以 windows 为例,从 Sun网站( )下载 JDK 6 并安装。 找毕业设计、项目源码、编程视频,就上码农网 manong365 7 接下来,设置 JAVA_HOME 环境变量以指向 JDK 安装文件夹。 右键单击“计算机”选择“属性”,选择“高级系统设置”,然后单击“环境变量”。 单击“新建”添加 JAVA_HOME变量,如果该变量已存在,单击“编辑”修改它。 JAVA_HOME 的值类似于“ C:\Program Files\Java\”。 安装 Eclipse 安装 JDK 之后,可以从 下载 Eclipse IDE for Java Developers。 将下载的 .zip 的文件解压到任何位置。 首次启动 Eclipse 时,它将要求为工作区间提供一个位置。 为了简化操作,可以选择一个简单的位置,比如 D:\workspaces。 安装并配置 Android SDK Android SDK 是开发 android 应用程序的基本要求,没有 Android SDK, android应用开发无从谈起。 Android SDK 中包含一个模拟器,所以无需带有 Android 操作系统的移动设备就能开发 Android 应用程序。 Android SDK 可以从 下载。 Android SDK 同eclipse 一样以 .zip 文件的形式发布,所以将其解压到合适的位置。 Android SDK 包含一个 tools 目录,需要将它添加到 PATH 中。 安装 ADT ADT 这个 Eclipse 插件对开发 Android 应用程序有很大的帮助。 它提供了一些工具来创建、测试、和调试 Android 应用程序。 ADT 需要使用 Eclipse 中的 Install New Software 工具来执行安 装。 (1)选择 Help 菜单项并选择 Install New Software„选项。 这个选项在以前的Eclipse 版本中为“ Software Updates”。 (2)选择“ Work with”字段,输。 Eclipse 将连接该网站并生成列表,如图 23 所示。 然后选择父节点 Developer Tools,并确认 同事选中所有子节点,然后单击 Next。 (3)更具提示安装所有的工具,并安装 ADT 所需工具的许可协议。 单击“ I accept„”,然后单击 Finish 按钮。 找毕业设计、项目源码、编程视频,就上码农网 manong365 8 图 23 使用 Eclipse 中的 Install New Software 功能安装 ADT 在 Eclipse 中安装 ADT 的最后一步是将他指向 Android SDK。 选择 windows 菜单并选择 Preferences。 在 Preferences 对话框中,选择 Android 节点并将 SDK Location 字段设置为 Android SDK 的路径(参见图 32)然后单击 Apply 按钮。 安卓应用程序的结构解析 通常由以下四个组件来构建一个完整的 Android 应用程序。 ①活动 ②意图接收器 ③服务 ④内容提供者 Activities 然而,并不是所有的 Android 应用程序都必须具备上面的四个组件,可以由上面的一个或几个来组建。 当决定使用以上哪些组件来构建 Android 应用程序时,需要将它们注册在 文件中,这是一个 XML 配置文件,在这个文件中可以声明应用程序组件以及它们的特性和要求。 这个配置文件是每个 Android 应用程序所必需的。 Activities 是一个程序的组件之一。 它的主要功能是提供界面。 一个程序一般由找毕业设计、项目源码、编程视频,就上码农网 manong365 9 多个 Activity 组成,各 activities 之间关系很松散,它们之间没有直接的关联。 必须有一个 activity 被指定为主 activity,它是程序启动时首先显示的界面。 每个activity 都可以随意启动其它的 activity。 每当一个 activity 被启动,则前一个activity 就被停止。 一个程序中的所有启动的 activity 都被放在一个栈中,所以被停止的 activity 并没有销毁,而在存于棧中。 新启动的 activity 先被存放于栈中,然后获得输入焦点。 在当前活动的 activity 上点返回键,它被从棧中取出,然后销毁,然后上一个 activity 被恢复。 当一个 activity 因为新的 activity 启动而被停止时,它会收到状态变化的通知,这样的变化有多个,每个都会引起系统调用一个相应的回调方法以通知 activity,这些回调方法被统称为“生命周期回调方法”。 这些回调方法分别在 Activity 被创建、停止、恢复、销毁时被调用。 如图 24,介绍各个“生命周期回调方法”,以 及其各个方法之间的关系: onCreate :当活动第一次启动的时候,触发该方法,可以在此时完成活动的初始化工作。 onCreate 方法有一个参数,该参数可以为空 ( null ),也可以是之前调用 onSaveInstanceState ()方法保存的状态信息。 onStart :该方法的触发表示所属活动将被展现给用户。 onResume :当一个活动和用户发生交互的时候,触发该方法。 onPause :当一个正在前台运行的活动因为其他的活动需要前台运行而转入后台运行的时候,触发该方法。 这时候需要将 活动的状态持久化,比如正在编辑的数据库记录等。 onStop :当一个活动不再需要展示给用户的时候,触发该方法。 如果内存紧张,系统会直接结束这个活动,而不会触发 onStop 方法。 所以保存状态信息是应该在 onPause时做,而不是 onStop 时做。 活动如果没有在前台运行,都将被停止或者 Linux 管理进程为了给新的活动预留足够的存储空间而随时结束这些活动。 因此对于开发者来说,在设计应用程序的时候,必须时刻牢记这一原则。 在一些情况下, onPause 方法或许是活动触发的最后的方法,因此开发者需要在这个时候保存 需要保存的信息。 onRestart :当处于停止状态的活动需要再次展现给用户的时候,触发该方法。 onDestroy :当活动销毁的时候,触发该方法。 和 onStop 方法一样,如果内存紧张,系统会直接结束这个活动而不会触发该方法。 找毕业设计、项目源码、编程视频,就上码农网 manong365 10 图 24 Android生命周期 Service Service 是 android 系统中的一种组件,它跟 Activity 的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。 Service 的启动有两种方式: () 和 ()。 使用 () 启动 Service 经历 : () onCreate() onStart()Service running () | onDestroy() Service stop 如果 Service 还没有运行,则 android 先调用 onCreate()然后调用 onStart();如果 Service 已经运行,则只调用 onStart(),所以一个 Service 的 onStart 方法可能会重复调用多次。 找毕业设计、项目源码、编程视频,就上码农网 manong365 11 stopService 的时候直接 onDestroy,如果是调用者自己直接退出而没有调用stopService 的话, Service 会一直在后台运行。 该 Service 的调用者再启动起来后可以通过 stopService 关闭 Service。 所以调用 startService 的生命周期为: onCreate onStart(可多次调用 ) onDestroy 使用使 用 ()启动 Service 会经历: ()onCreate()onBind()Service running onUnbind() onDestroy() Service stop onBind 将。基于android的图片阅读器的设计与实现计算机毕业设计论文(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。