基于安卓手机平台的视频播放器的设计与实现本科毕业设计(编辑修改稿)内容摘要:

一个功能强大的轻量级关系数据库引擎。 ( 3) Dalvik VM, android平台的一个虚拟机,它相当于 PC中 Java的虚拟机 JVM。 ( 4) WebKit,一 个最新的 web浏览器引擎, WebKit用于支持 Andiroid的浏览器或嵌入式 web视图。 ( 5) 媒体库( Media Framework), 基于 OpenCore的 PackeVideo,该库支持多种常见的音频和视频格式,同时支持静态图像文件。 编码格式包括: AAC, , MP3, PNG, MPEG4,JPG, AMR。 ( 6) 基本的 2D图形引擎 SGL。 ( 7) FreeType,位图( bitmap), 适量( vector)字图显示支持。 ( 8) 系统 C库( libc), BSD集成系统标准 C库( libc),它是专门 为基于嵌入式 Linux的设备定制。 ( 9) Core Libraries ,该核心库 提供了大部分的 Java编程语言核心库的功能。 ( 10) Surface Manager 对显示子系统的管理, 并且可以 2D, 3D图层的无缝集成多个应 4 用程序。 操作系统( OS) Android 的核心系统服务依赖于 Linux 内核,操作系统为 Android提供的服务包括: 1. 内存管理 (Memory Management) 2. 网络堆栈 (Network Stack) 3. 进程管理 (Process Management) 4. 安全性 (Security)。 5. 驱动程序模型 (Driver Model)包含以下这些常规的驱动程序: (1)Display Driver: 显示驱动程序 (2)Keypad Driver : 键盘驱动程序 (3)Camera Driver : 摄像头驱动 (4)WiFi Driver : 无线网络驱动程序 (5)Flash Memory Driver : 快闪记忆体驱动器 (6)Audio Driver : 音频驱动程序 (7)Binder(IPC) Driver : 粘 结剂( IPC)驱动器 (8)Power Management : 电源管理 只有了解了 android 框架才能更好的使用 android 提供的功能和服务。 所以如果 在android的整体框架 这一方面 有一定的了解后 , 对与理解 android的一些机制和应用开发有很大的帮助, Android 应用程序的组成 ( 1) Intent 在 Android 中,每一个行为都可以抽象为一个 Intent。 可以简单地把 Intent 理解为一个包含了数据的消息。 Intent 可以用于启动一个 Activity 或者 Service,可以用于进程间的通信。 事实上,应用程序的启动也是通过 Intent 实现的。 ( 2) Activity 正如它的名字所暗示的 , Activity 就是活动。 应用程序必须至少包含一个 Activity。 Activity提供了一个虚拟的用户接口,每一个 Activity都有一个默认的窗口 可以被用来显示用户界面 ,在正常情 况下,它是一个全屏幕窗口。 例如,音频和视频播放软件用户界面 就是 Activity。 ( 3) Content providers Android 平台建立了一个 SQLite 数据存储机制, 并包含了一系列管理 SQLite 数据 库的 相关方法。 正常情况下,应用程序不直接调用的内容提供者定义的函数,而是通过 5 ContentResolver 间接呼叫。 这样设计的好处是 ContentResolver 可以访问任何的 Content providers, 并且 统一 了 接口。 在 Android 应用程序中 可以通过 Content providers 访问数据库。 每个 Content provider 都定义了一系列的方法用于访问它对应的数据库。 应用程序在新建数据库时也可以定义相应的 Content provider 用于向其他应用程序共 享数据。 ( 4) Service Service 与 Activity 的主要区别在于, Service 是在后台运行的,并且它也没有用户界面。 例如通常情况下,用户选择了一个播放列表开始播放后,离开了该用户界面 (Activity),如果仍然希望视频或歌曲不会暂停,这时不能在 Activity 中调用播放器。 而是用 Service 去调用播放器, Android 应用工程文件的组成 ( 1) src 既源文件目录 . ( 2) gen 目录 .包含 文件 .它由 Eclipse 自动生成和修改 ,不需要我们去维护 .下面的res 文件夹中发生的任意变化 , 都会重新编译 ,一直保持同步 . ( 3) android 库 . ( 4) assets 目录 .存放多媒体等文件 . ( 5) res 目录 .存放应用用到的资源文件 . ( 6) drawable 目录 ,存放图片资源 .分别为高中低三个分辨率 . ( 7) layout 目录 .放置布局文件 ,均为 .xml文件 . ( 8) values 目录 .放置字符串 (),颜色 (),数组 () ( 9) .我们要在这个文件中声明应用的名称 ,所有的 Activity,Service,Reciver 等 3 基于 Android 手机平台的多功能视频播放器的系统分析 系统的可行性分析 可行性分析的任务,不是所有的问题都 有 简单明显的解决方案,其实,很多问题 在 系统规模 的预定大小 内 不能得到解决。 如果问题 还没有一个可行的解决方案,然后就开始开发项目,那么 开发项目时间,资源,人力和资金 将造成 是不必要的浪费。 可行性研究的目的是用最小的代价在最短的时间,以确定问题是否可以解决。 必须记住的 6 可行性研究的目的 不是为了解决问题,而是要确定它是否是值得的解决方案。 如何达到这个目的呢。 当然,不能依靠主观的猜想,依靠客观的分析。 必须几个主要的可能的解决方案的利弊进行分析,以确定原来的系统目标和规模的现实,完成后系统的好处足够大,以保证这个系统的投资和发展程度。 因此,可行性研究本质上是一个大大压缩,简化了系统的分析和设计过程,这是在更高层次,更抽象的系统的分析和设计过程。 该设计的可行性研究从三个方面: ( 1)运行可行性:系统需要 Android的虚拟机环境, ADT,谷歌 Android DDMS安装 Eclipse插件。 其经 营环境已经相当稳定和丰富的功能,包括完整的编码,调试,测试和发布的Android应用程序,它支持所有的 Android应用开发技术,包括 SQLite的, Skia的 3D制作,Android的 XML,可以是一个很好的释放 Android应用程序的 APK包。 ( 2)技术可行性: Eclipse中的 Android ADT的技术较为成熟,跨平台,推出由 Sun(现在由本公司收购 Orcel)动态 Java语言开发。 ( 3)法律上的可行性:由于是自主开发和设计的,所以它不会构成侵权,法律上是可行的。 通过上述可行性分析,使用 Eclipse的 Android ADT的 DDMS技术,使用了 JAVA语言的系统开发。 系统的需求分析 系统设计的目标 通过分析用户需求以及自己对该视频播放器的全面分析,该系统应该具备以下功能: ( 1)能够在手机里播放视频文件。 作为一个视频播放器,其核心就是能够流畅的播放手机硬件能够承载的视频流文件以及基本的播放控制。 ( 2)能够在手机里面进入任意目录下找想观看的视频文件。 用户不需要输入想看的视频的名字,只需要进入手机的任意级目录,选中自己喜欢的视频加载到播放列表中就可以了 ( 3)能够 对视频文件信息进行读取,存储。 对视频文件的存储,读取主要是通过 SQLite。 SQLite,是一款轻型的数据库,是遵守 ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百 K的内存就够了。 ( 4)播放列表。 播放列表的设计,主要是方便用户观察哪个文件正在播放,以及方便用户直接点击播放列表中的文件来进行快速播放。 7 ( 5)缩略图 能够让视频更加的直观,便于用户选择 ( 6)具有查看天气预报功能 能够查询当地三天内的天气情 况 系统设计的特点 ( 1)与自带的播放器相比,拥有更炫丽友好的的界面。 ( 2)能够从任意级目录选中自己想看的视频文件 . ( 3)有缩略图和播放列表,方便用户使用。 ( 4)有查看天气预报的功能 4 系统开发环境以及硬件平台搭建 系统开发环境 Android 用的是 Linux内核,本系统在开发过程中 主要用到的就是当前 Android应用层编程技术。 因此 在编程环境上的选择是 Linux 系统 +Eclipse+java+Android SDK+Android Development Tools + SQLite。 JAVA 语言 简介 Java是一种跨平台的应用软件可以写面向对象的编程语言,是在 1995年 5 月推出由 Sun Microsystems 的 Java 编程语言和 Java 平台(即 JavaSE 的总称的 JavaEE, JavaME 的)。 由James Gosling和他的同事共同开发,并于 1995 年正式推出。 在 Java实现的 HotJava 浏览器(支持 Java 的 applet)显示了 Java 的魅力:跨平台,动态的 Web,互联网 然后, Java 已经被广泛接受和推广网络的飞速发展 ,常用的浏览器支持 Java applets。 另一方面, Java 技术不断更新。 ( 2020 年甲骨文收购 SUN。 Java 编程语言起源于太阳的所谓“绿色”项目,旨在内置电器的分布式系统,电气更聪明的发展。 1996 年 1 月发布的 版本,自那时以来世界的一种新的语言。 2020 年 2月, 2020 年 10 月版本 ( ) ( )版本发布于 2020 年 12 月发布的 1998 年 12月发布 版本, 版本后,这是最新的版本。 版是一个版本分为 J2SE, J2ME, J2EE,J2SE版本的 Sun Java技术的基础上创建和运行 Java程序提供了最基本的环境, J2ME和 J2EE的基础上成立的 J2SE, J2ME 开发用于嵌入式应用的运行时环境(如在手机上运行的 Java程序),在 J2EE 的分布式企业应用程序的开发和运行环境。 8 Android Android 是一个自由和开放源码的基于 Linux 的操作系统,主要用于移动设备,如智能手机和平板电脑由谷歌和开放手机联盟领导和发展。 联盟的 30 多家技术和无线应用的领导者,包括中国移动,摩托罗拉,高通,宏达电和 TMobile。 Android 是一个真 正开放的移动设备平台。 与运营商,设备制造商,开发商和其他有关各方,形成一个深层次的合作关系,建立标准化,开放式的移动电话软件平台,在移动通信行业的一个开放的生态系统,这样的通用性和应用程序之间的连接将保持最大程度的影响。 所有的 Android 应用程序是完全平等的。 所有的应用程序正在运行的核心发动机的上方,核心引擎实际上是一个虚拟机,它提供一组 API 的应用程序和硬件资源之间的通信。 撇开 Android 的核心引擎,所有其他的事情,“应用”。 的 Android 打破了应用之间的界限,例如,开发人员可以结合当地的联系人,日历,位置信息,为用户创造全新的用户体验与 Web 上的数据。 操作系统 Android操作系统的内核是 Linux内核,典型的 Linux循环和功能 [39]此外,谷歌为了让 Linux的移动设备上运行的修订和扩大的一个分支。 Android的去除了的本地 Linux的 X Window系统,不支持标准的 GNU库,它允许在 Linux 平台上移植到 Android平台的应用程序变得很困难 [40]。 帕特里克布雷迪在 2020年,在谷歌 I/ O讲话“解剖和生理学的一个Android 的 Android HAL 架构图,并提出。 HAL*文件的形式存在的 Android 框架和 Linux内核分开,这中间层使得 Android的移动设备上实现更高的执行效率。 这种独特的系统架构的 Linux内核的开发者 Greg KroahHartman和其他内核维护者的一致好评。 谷歌的 Android内核开发自己的生产称为 wakelocks 移动设备的电源管理功能该功能是用于管理移动设备的电池性能,但功能还没有被添加到 Linux内核的主线,开放和维护,因为 Linux内核维护者向他们展示,谷歌是不是这个功能和代码的意图。 2020年 2月 3日,谷歌 Android内核开发和 Linux 社区层次的发展是不同步的, Linux 内核的开发者 Greg Kroah哈特曼将Android的驱动程序从 Linux内核“状态树”(“分期树”)上除去。 [41]。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。