安卓开发课程设计报告
湖南科技⼤学计算机科学与⼯程学院
综合实践能⼒创新实训-安卓开发课程设计报告
题⽬:新闻客户端
学号: 17050103XX
姓名:⽩马
完成时间: 2019年12⽉15⽇
安卓开发-新闻客户端
1.设计要求
1.1 技术平台要求
1.熟悉 Android Stuido、Eclipse、SQLite 等常⽤ Android 开发⼯具。
2.熟悉⼀种语⾔,主要使⽤java语⾔开发。
3.设计并实现⼀个具体的 Android 应⽤系统,本次课程设计选择的是新闻客户端的题⽬。
(1)对选定的新闻客户端项⽬进⾏需求分析,写出需求说明书,并搜集、整理所需素材。
(2)根据项⽬需求,进⾏数据库(如果需要数据库的话)的概要设计与详细设计。
(3)根据需求说明进⾏项⽬的功能设计,画出每个界⾯的原型。进⾏详细设计,实现每个模块的功能。
(4)对项⽬进⾏部署与测试。
(5)分析总结项⽬的创新点和存在的不⾜,提出优化思路。
1.2 功能要求
对于要完成的新闻客户端项⽬需要做到以下功能:
1.掌握 Android 中的菜单及导航框架。
随着安卓开发的盛⾏,安卓应⽤占据了⼿机APP市场的绝⼤部分份额。随着市场的推动和技术的发展与沉淀,Android开发领域产⽣了很多实⽤并且容易开发的各类包和⼩型框架,例如速展⽰Adobe Afeter Effect(AE)⼯具所作动画的框架客户端组件间异步通信的框架lottie-android、RxAndroid、侧滑菜单栏框架SlidingMenu、提供场景转换过渡能⼒的动画框架Material-Animations等众多矿建,使得Android开发的样式更加的多样化、⽤户体验更加的⾼,开发周期更加短。
2.掌握⾃定义布局.
掌握安卓的五⼤布局,对于五⼤布局的使⽤场景进⾏了解,并且能够在⾃⼰的项⽬⾥⾯合理选择和使⽤安卓的界⾯布局。
3.掌握 Android 中的数据存储
对于Android的五⼤数据存储⽅式进⾏熟悉与使⽤。在本次的新闻客户端的课程设计的开发中,Android的数据存储使⽤到了SharedPreferences数据存储和⽹络断的数据获取的⽅法。
4.掌握安卓项⽬的运⾏⽅式和⽹络端数据的获取、处理和展⽰, 能够将从⽹络中夺取的数据进⾏处理利⽤listView显⽰在APP中,能够对于内容进⾏查看。
1.3 其他要求
在课程设计的过程中要求以个⼈为⼩组完成实验项⽬的开发,要求从界⾯的设计到逻辑java代码的实现,图标的排版,运⾏、测试和实验报告的撰写都由个⼈完成。
2.背景介绍
随着移动通信与Internet向移动终端的普及,⽹络和⽤户对移动终端的要求越来越⾼,⽽wWindows Mobile, PalmoS等⼿机平台过于封闭,不能很好的满⾜⽤户的需求,因此市场迫切需要⼀个开发性很强的平台。经过多年的发展,第四代代数字通信(4G) 技术活动了⼴泛的接受,它为移动终端⽤户带来了更快的数据传输速率。随着4G⽹络的使⽤,移动终端不再仅是通讯⽹络的终端,还将成为互联⽹的终端。因此,移动终端的应⽤软件和需要的服务将会有很⼤的发展空间。Google 为此于2007年11⽉推出了⼀个专为移动设备设计的软件平台⼀-Android。
简易安卓app开发不仅如此,在科技的巅峰时期,第五代数字通信(5G的出现)将会把Android开推上⼀个更⾼的台阶,等多的、更多元化的、更快速的安卓应⽤将诞⽣。
Android是⼀套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和⼀些关键的平台应⽤。Android是由Linux+Java 构成的开源软件,允许所有⼚商和个⼈在其基础_上进⾏开发。Android平台的开放性等特点既能促进技术(包括平台本⾝)的创新,⼜有助于降低开发成本,还可以是运营商能⾮常⽅便地制定⾃⼰的特⾊化的产品。因此,它具有很⼤的市场发展潜⼒。
3.需求分析
在互联⽹和IT技术快速发展的这个社会,伴随着Android操作系统的盛⾏,基于Android发的的基于Android的应⽤已经⾮常盛⾏。⽽且安卓开发更将⾯向普通永华,这些⽤户更关注⽤户体验因此利⽤安卓实现多媒体应⽤⼗分必要。
在以前的传统认知中⼈们获取新闻的⽅法⼀般来源于收听⼴播、阅览报纸、观看电视新闻、但是对于4G发展、5G马上盛⾏的新世纪,简单的信息获取已经完全不能能满⾜当代⼈的需求,⼀款可以直接在⼿机APP上阅览新闻的APP也就显得尤为重要。利⽤APP查看新闻、时事政治、以及热点新闻将是⼀种趋势。在这样的趋势下设计了这个Android⼿机新闻客户端APP。
4.设计⽬的
以实践为⽬的,通过⼀个或者多个完整Android项⽬的开发从⽽从实际中掌握Android开发的流程与开发技术。将Android开发课程中的诸多知识点运⽤于实际开中。熟悉Android开发⼯具的使⽤,了解并学会解决安卓开发中常见的错误。理解整个流程。学会框架的使⽤。
5.技术介绍
1.开发⼯具简介
Android Studio是⼀个Android的开发环境,它是基于IintelliJ IDEA,类似于Eclipse,Android Studio提供了集成的开发环境和调试,从整体上不论是开发的效率还是开发的便捷程度都是⽐Eclipse简洁⽅便很多。在程序的调试⽅⾯也远⽐Eclipse⽅便很多。
2.开发语⾔简介
Android开发使⽤的是java+XML语⾔的⽅式。Java影响深远的⾯向对象编程语⾔。拥有着多种语⾔的特点,并且是跨平台的。因此java具有强⼤和简单易⽤两个特点。可以⽤来编写桌⾯应⽤程序、Web应⽤程序、分布式的系统和嵌⼊式的系统等。
XML是⼀种简单的可扩展标记语⾔。是SGML的⼀个⼦集合,也就是他的简化版本,⾮常适合与web应⽤的开发和其他数据源之间的数据交换。
3.使⽤技术介绍
1.整体实现思路
1.仿照市⾯上常见的软件,使⽤底部与顶部导航栏结合,侧滑的⽅式实现新闻数据的展⽰
2.整体的页⾯布局使⽤的是RecycleView的嵌套的⽅式
3.底部的4个Fragment切换和在每个Fragment中的ViewPage切换, 采⽤的是LuckyJayce/ViewPagerIndicator的开源框架
4.新闻列表采⽤的是RecyclerView的⽅式
5.顶部的沉浸式的状态栏使参考
6.新闻详情的实现采⽤的⽅法是通过Android⾃带的Html类解析Html和html下标签的图像
7.为数据的隐私和良好的⽤户体验在⼀般新闻客户端的基础上添加了登录注册模块以及切换主题等的功能。
2.⽬前存在的问题
1. 对于⽹页html的解析有⼀些问题,导致分类模块的不稳定
2. 由于解析的问题,有事刷新后没有显⽰相应信息
6.合计思路
6.1功能分析
该设计实现了在⼿机端浏览新闻的应⽤程序。⽤户通过下载应⽤程序,进⼊注册应⽤程序可以在程序中浏览各种新闻。可以砸热点、体育等多个板块之间进⾏切换。程序通过⽹络和相关的协议从⽹络中
获取新闻数据,通过程序的适配器和布局⽂件将数据进⾏展⽰。
⽤户通过注册登录的⽅式进⼊app中,然后对新闻进⾏浏览,可以对于浏览的主题进⾏切换,也可以通过menu浏览APP的相关介绍。在整体的布局上使⽤了底部菜案栏,上⾯分类栏的⽅式。利⽤适配器将页⾯和相对应的listitem适配茹相对应的⽂件中。对新闻进⾏展⽰。
6.2 数据流图
新闻客户端数据流图
6.3 客户端状态图
6.3 模块划分
程序划分为登录模块、主页模块、滑动模块和数据展⽰模块和其他模块。登录⽤户⽤户的登录还验证,同时具有不同⽤户的信息隐藏的功能。主页模块是对于数据的初步展⽰和其他滑动模块的门额进
⼊接⼝。滑动模块⽤于新闻的分类和数据的切换。其他模块⽤于对⽤户的信息进⾏查看和对于程序的主题进⾏更改、查询程序的有关信息。数据是通过url连接来⾃⽹络的数据。经过处理显⽰在新闻客户端。
6.4 程序层次图
7.程序实现及代码分析
7.1⽤户登录
⽤户登录模块分为欢迎界⾯和⽤户登录模块,使⽤⽤户登录的作⽤是因为事先⼀个⽤户⼀个账号,对于软件的操作内容和⽇志进⾏保密。⽤户可以在登录界⾯进⾏账号和密码的输⼊然后登录。如果没有账号和秘密,可以点击“注册”按钮进⾏注册,然后登录。在⽤户没有注册的时候会提⽰不存在账号请先注册,注册的⼈员如果输⼊账号和密码错误则显⽰提⽰信息。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论