欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    移动设备应用程序开发大作业Word文档格式.docx

    • 资源ID:8537871       资源大小:331.33KB        全文页数:15页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    移动设备应用程序开发大作业Word文档格式.docx

    1、无论在国内还是国外,一跃成为了份额最高的智能手机操作系统。因此研究它,了接它的各个组件使用原理将是十分有意义的。综上所述,基于Android平台,开发一个上述的新闻客户端软件,是一个十分有意义的选题。1.2 新闻客户端可行性分析1.2.1 社会可行性新闻客户端是基于智能手机Android平台开发的,而至今为止Android系统在全国乃至全球智能手机操作系统的市场份额仍占全球第一。全世界使用此操作系统的用户早已超过14亿。开发这么一款Android软件,将是十分流行的。随着计算机技术和移动互联网的发展,网民数量越来越多,网络世界越来越丰富,人们也非常熟悉智能手机操作。市场上此类软件也有一些成功案

    2、例,用户也接受在手机上下载新闻阅读软件来阅读新闻。此软件严格按照国家法律法规来进行研究、实践,并无法律和政策方面的限制。1.2.2 技术可行性Android移动平台是基于Linux的开源手机平台。该平台由操作系统,中间件,用户界面,应用软件四大部分组成。本软件基于Android SDK 开发,使用到了Activity、Fragment、ListView、ViewPager等系统自带组件。也使用到了ViewPagerIndicator、XUtils等第三方开源组件,这些技术都是开源免费的。使用起来都比较简单灵活,被程序员广泛使用的。展示界面也比较流畅,说明技术上是可行的。在科技日趋发达的今天,硬

    3、件更新的速度越来越快,内存容量越来越大,CPU速度越来越快,可靠性越来越高,价格越来越便宜,其硬件平台完全能满足此软件的需要。1.2.3 操作可行性目前,大多数的智能手机都是基于Android平台的。该软件支持Android2.2以上版本的运行。所以大多数的Android手机都能运行该软件,并且该软件不含广告,没有病毒。所以该软件的安装、调试、运行不会改变原先Android手机系统的布局与设置。并且该软件的界面简单,稍加发点时间熟悉便能够轻易上手,对于阅读实时新闻来说是十分方便的。1.3 新闻客户端需求分析1.3.1 新闻客户端需求概述启动应用程序后可以对新闻资讯进行实时更新,可以根据自己的兴

    4、趣选择不同栏目的新闻进行阅读,可以根据自己的喜好选择不同的新闻阅读方式如文字、图片或视频来获取最新的新闻资讯,在新闻阅读时可以根据自己的需求选择不同的模式,还可以对自己喜欢的文章进行分享到其他的大部分主流社交平台。这些都是大部分用户的普遍需求,也是本新闻客户端软件需要实现的主要功能。由此可得出本新闻客户端有如下功能性需求:(1)Android新闻客户端界面要有不同新闻类别分类导航,每个类别必须有头条新闻展示和一系列详细的新闻信息列表。新闻内容将以12个子栏目类别进行内容展示,其中首页、荆州、社会、娱乐、体育等5个子栏目为系统默认显示的主要栏目。用户在该模块下将看到当下最新鲜热门的新闻内容,头条

    5、栏目下所展示的新闻内容会可能从属于到他任意一个栏目,可以与其他子栏目的内容有所重合。(2)用户可以点击不同模块进入不同模式的新闻阅读模块。在每个子栏目内容展示页面的上方将提供一个支持左右滑动的内容浏览区域,该区域将展示图集新闻(包含有大量图片资源的新闻),或者视频;在每个子栏目的下方将以列表的形式展示新闻内容,排序要求遵循新闻的时效性。(3)用户可以在进入新闻详情页后根据自己的喜好来调节新闻阅读详情页的字体大小。(4)用户可以在进入新闻详情页后点击分享按钮对自己喜欢的文章进行分享。由于该客户端运行在手机终端的安卓平台上,那么对其响应用户的时间为5秒钟之内,如果超过5秒,手机终端会出现假死现象,

    6、这会降低用户体验。为提高用户体验,要求所有用户的简单操作所消耗的处理时间在5秒之内,而耗时操作(如:服务器访问)这种也要求在10秒钟之内完成,同时不能让用户有较长的时间等待,在处理耗时请求的同时不能影响用户的其他操作,避免出现假死现象。通过对用户的需求进行调查,从用户的需求角度出发,可以得出用户需要的三大主要性能指标为软件的响应速度快、安全性高和处理信息速度快。所以本软件在设计时引用了大量的优秀的Android开源框架,减少了许多由于自己的设计导致的一系列代码冗余问题,还可以大大的增加开发效率。另外为了适用于大多数用户,根据目前的Android设备系统版本分布情况,Android2.3以上版本

    7、的设备占到了95%。所以开发时选择的最低适配版本是Android2.3。由此得出该新闻客户端如下非功能性需求:(1)该新闻客户端将会定时更新版本,不断增加新功能和完善已有功能以适应不断变化的需求,这需要本客户端具有很好的可扩展性,要求设计良好的代码以允许更多的功能在有需要的时候被加入到适当的位置中。(2)该新闻客户端要兼容不同品牌、版本和分辨率的Android设备。(3)该新闻客户端要界面友好,操作性强,易用性强。所谓易用性就是各种功能不要藏的太深,用户应该很容易找到他们期望进行的各种操作;易学就是需要应用茶品可以通过简单的导航,在线帮助等各种方式保证用户可便捷掌握使用技巧;易用的重点则在让软

    8、件熟练使用后应该可以更快的进行各项操作。(4)该新闻客户端要切换流畅,响应速度要快。1.3.2 新闻客户端功能分析根据以上对用户的需求分析可以得出新闻客户端的主要系统功能模块概述如下:新闻客户端是阅读新闻必不可少的软件,用户能够根据自己的需求,选择相应的分类进行阅读。新闻内容都是通过请求服务器获得的,客户端通过解析服务端传递过来的JSON数据,最终显示在界面上。系统的设计与开发都严格遵循软件工程的规范,运用了软件设计模式,减少系统模块间的耦合。该软件的主要功能模块如下:1.新闻模块,对新闻进行了分类展现。2.组图模块,将新闻一图片形式展现。3.视频模块,将新闻以视频形式展现。4.新闻详情页,可

    9、以根据用户需求,自定义阅读模式。5.分享模块,用户可以将自己喜欢的内容分享出去。根据系统的功能分析,画出功能模块图和详情流程图如下所示:图1-1 新闻功能模块设计图图1-2 新闻客户端详情流程图2 系统分析2.1 研究的思路及方法JAVA作为用户最多的开发语言,它具有简单、面向对象、安全等特点。所以选择用JAVA作为新闻客户端的开发语言。该新闻客户端是一个移动互联网产品,它通过Android系统与移动互联网进行连接。它通过解析服务端传递过来的Json或Xml数据,并将其解析结果显示在界面展示给用户。用户下载安装此软件后,可以极其方便地根据自己的兴趣选择相应的栏目,进行新闻分类阅读。现在的手机新

    10、闻客户端不仅仅是简单的阅读,更多的是加入了分享和社交功能,这也是一个明显趋势。现在的用户新闻阅读不再是简单的接收,他们也想通过将他们喜欢的文章分享出去来表达自己的思想,展现自己的诉求,甚至体现自我的品位,他们渴望和其他用户交流自己的想法。此新闻客户端软件主要以微软的Windows7操作系统作为开发环境,使用Eclipse+Android SDK作为开发工具,GitHub上的开源项目Xutils进行网络图片的加载与显示,第三方开源框架ViewPagerIndicator来作为新闻栏目分类显示的控件,ViewPager来实现广告轮播条,ListView来展示新闻列表,自定义控件来实现下拉刷新,上拉

    11、加载功能,ShareSDK实现第三方分享功能。该软件利用Apache Tomcat8作为后台服务器提供Json数据,模拟客户端请求服务器接口程序的过程。客户端通过访问服务端提供的接口利用HttpUtils开源组件进行Json数据解析,并显示到界面上。利用多个不同android版本、不同分辨率的android虚拟机作为测试终端。将系统划分为若干模块,对多个模块进行独立的单元测试。最后对整个客户端进行整体测试。确保此软件能够在大多数Android手机上稳定运行。3 新闻客户端设计与实现3.1 开发环境介绍3.1.1 系统开发平台新闻客户端的开发是在Windows+Eclipse+ADT的环境下进行

    12、的。Windows操作系统是美国微软公司开发的一款操作系统。自面世以来,就受到了广大消费者的欢迎。由于其界面的美观的易用,慢慢成了家家户户最喜爱的计算机操作系统。本新闻客户端就是基于这么一款操作系统来进行开发的,降低了学习系统的成本。Eclipse是由IBM公司开发的一款免费的、开源的、基于Java的可拓展开发平台。通过丰富的插件组件来构建不同的开发环境。ADT,Android开发工具。它是集成在Eclipse中的插件,为Android的开发提供各种工具。本软件就是在这样的环境中进行开发的。3.2 整体布局软件与用户的交互主要是以Activity+Fragment来实现的。Activity是一

    13、个Android系统自带的重量级组件,它主要用于与用户界面的交互。它是一个有生命周期的对象,它也是Android四大组件中最常用的一个。Android开发者通过新建一系列Activity的子类,覆写它的onCreate方法来实现一系列的功能。Fragment是一个Android系统轻量级组件,它的使用可以大量释放内存空间。我们可以将Fragment当成是Activity中的模块,这个模块有生命周期和布局,可以单独处理自己的输入。可以在Activity运行的时候动态地加载或移除Fragment。Fragment可以在Activity中被大量复用,实现灵活的布局,改善用户体验。新闻客户端总体可以分

    14、为3部分,上边是红色的标题栏,以RelativeLayout布局,其他每个界面都共用这一个布局。标题主要用于显示模块的名称,通过在不同的模块调用setText()方法来改变显示的文字内容,效果如下图所示:图 3-1模块标题示意图布局简要代码如下:TextView /ImageButton /RelativeLayout中间部分是每个模块的主体内容,以新闻模块为例,最上边的是新闻分类条目,可以左右滑动,是使用第三方开源框架ViewPagerIndicator实现的。ViewPagerIndicator是GitHub上的免费开源项目,它是Android中最常用的第三方控件之一。由于它使用简单,界面

    15、美观的特点,几乎市面上所有的Android类新闻软件都有使用它。中间的是一个广告轮播条,每隔一秒切换一次界面,是使用ViewPager实现的。下边的界面是新闻列表,可以上下滑动,是使用Android比较常用的一个经典控件ListView实现的。界面效果如下图所示:图3-2新闻模块布局示意图下边部分是模块列表,通过点击可以切换到相应模块,下边模块列表是通过三个RadioButton实现的,点击RadioButton会改变图片和字体颜色,实现原理就是编写一个图片和颜色选择器,被选中时和未被选中时赋予不同的图片和颜色。3个主要模块的实现是使用了ViewPager。原始的ViewPager可以根据手指

    16、的滑动而切换界面,这显然不能满足我们的需求。所以需要自定义一个控件继承ViewPager,重写它的onTouchEvent方法。界面如下图所示:图3-3模块切换布局示意图具体布局代码如下所示:RadioGroupid=+id/rg_grouporientation=horizontal ./RadioGroup3.3 新闻模块3.3.1 新闻类别列表新闻类别列表是使用一个第三方开源框架ViewPagerIndicator来实现的,主流的新闻客户端软件基本上都有使用这一框架。此列表可以左右滑动,点击即切换。点击向右的图标也可以切换当前条目。我们可以修改该框架的源代码来自定义我们自己喜欢的显示风格

    17、。当使用这一框架时,我们还需要注意的是,当需要设置与之关联的ViewPager的监听方法时,不能直接设置该ViewPager的监听方法,只能设置ViewPagerIndicator的setOnPageChangeListener方法。具体的使用代码如下所示:1、在布局文件中使用com.viewpagerindicator.TabPageIndicator+id/indicatorlayout_weight=1 /2、在Java类中配置mIndicator = (TabPageIndicator) view.findViewById(R.id.indicator);mIndicator.setV

    18、iewPager(mViewPager);/ 把viewpager和mIndicator关联起来mIndicator.setOnPageChangeListener(this); / 设置TabPageIndicator的滑动监 /听事件3.3.2 新闻条目列表广告轮播条是新闻阅读类软件中的一个重要组成部分,它是由一个ViewPager组件来实现的,并且可以定义一个定时器来切换当前页面,来实现自动轮播效果。ViewPager是一个可以左右滑动的View,它是Android扩展包android-support-v4里面的类。通过这个类,用户可以自由的左右来回切换页面。. ListView是And

    19、roid系统自带的控件之一,它的使用同样是十分广泛的,它通常用来加载一系列相同布局的列表。使用它同样需要一个PagerAdapter适配器来给它提供数据。从新闻列表的特征来看,显然是由一个ListView来实现的。但是为了在滑动ListView的时候,带动ViewPager一起滑动,则需要自定义一个控件,来讲广告轮播条的ViewPager和新闻列表的ListView关联起来。而大部分的新闻软件都有上拉刷新和下拉加载更多的功能,所以在此自定义控件中也应加上上拉刷新和下拉加载更多的功能。此自定义控件继承了ListView类,实现了OnScrollListener,android.widget.Ad

    20、apterView.OnItemClickListener接口。主要代码如下:1、初始化头布局:mHeaderView = View.inflate(getContext(), R.layout.refresh_header, null);this.addHeaderView(mHeaderView);tvTitle = (TextView)mHeaderView.findViewById(R.id.tv_title);tvTime = (TextView)mHeaderView.findViewById(R.id.tv_time);ivArrow = (ImageView)mHeaderVi

    21、ew.findViewById(R.id.iv_arr);pbProgress=(ProgressBar)mHeaderView.findViewById(R.id.pb_progr ess);mHeaderView.measure(0, 0);mHeaderViewHeight = mHeaderView.getMeasuredHeight();2、初始化底部布局mFooterView = View.inflate(getContext(),R.layout.refresh_listview_footer, null);this.addFooterView(mFooterView);mFoo

    22、terView.measure(0, 0);mFooterViewHeight = mFooterView.getMeasuredHeight();/ 隐藏刷新控件mFooterView.setPadding(0,-mFooterViewHeight,0,0); this.setOnScrollListener(this);在布局文件中使用此自定义控件如下:com.bishe.news.view.RefreshListView+id/lv_list0dpcacheColorHint=#fff 对应的显示界面如下:图3-4新闻模块上拉刷新示意图图3-5新闻模块下拉加载更多示意图3.4 组图模块组

    23、图模块是整个客户端软件中比较简单的一个模块,它的功能就是改变新闻显示风格,以图片形式展现,满足不同需求的用户。它的布局使用了网格布局GridView。整体布局代码如下:GridView+id/gv_photonumColumns=2visibility=gone条目布局如下:LinearLayoutlayout_margin=10dpdrawable/pic_list_item_bggravity=centerverticalImageView/LinearLayoutJava填充数据的代码主要集中在getView方法中,具体如下:if (convertView = null) convert

    24、View = View.inflate(mActivity, R.layout.list_photo_item, null); holder = new ViewHolder(); holder.tvTitle = (TextView) convertView .findViewById(R.id.tv_title); holder.ivPic = (ImageView) convertView .findViewById(R.id.iv_pic); convertView.setTag(holder); else holder = (ViewHolder) convertView.getTa

    25、g(); PhotoInfo item = getItem(position);holder.tvTitle.setText(item.title);utils.display(holder.ivPic, item.listimage);实现效果如下图所示:图3-6组图模块示意图3.5 视频模块 视屏模块和组图模块的设计类似,它的设计主要是为了满足喜欢通过视频来了解新闻时事动态的用户。整体以一个ListView来布局。主要布局如下:ListView+id/lv_photodivider=null在Java中的实现方式也基本保持一致,可以使用ViewHolder类来优化ListView,实现ListView的复用,代码如下: static class ViewHolder publicTextViewtvTitle; publicImageViewivPic; 3.6 新闻详情页新闻详情页即是点击新闻进入后的页面,使用一个WebView来实现。在新闻详情页中,用户可以点击返回按钮返回到前一页面,也可以选择适合自己的字体大小来观看新闻,还可以点击分享按钮,将自己喜欢的文章分享到其他第三方社交平台。主要布局代码如下:WebView+id/wv_webm


    注意事项

    本文(移动设备应用程序开发大作业Word文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开