Android电子相册设计报告_第1页
Android电子相册设计报告_第2页
Android电子相册设计报告_第3页
Android电子相册设计报告_第4页
Android电子相册设计报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

欢迎阅读本文档,希望本文档能对您有所帮助!欢迎阅读本文档,希望本文档能对您有所帮助!欢迎阅读本文档,希望本文档能对您有所帮助!欢迎阅读本文档,希望本文档能对您有所帮助!欢迎阅读本文档,希望本文档能对您有所帮助!欢迎阅读本文档,希望本文档能对您有所帮助!智能移动终端应用开发设计报告(2013/2014学年第2学期)题目:电子相册软件学院:信息与电气工程学院专业:电子信息工程姓名:XXXX学号:XXXXXXX设计成绩:2014年5月15日目录TOC\o"1-2"\h\u34651软件需求分析 1117781.1Android平台背景 1236261.2安卓电子相册市场需求 1245821.3安卓电子相册功能需求 1122912软件总体设计 2229542.1电子相册功能设计 2200472.2电子相册软件流程图 282602.3电子相册UI设计 3196253关键技术分析 527804软件详细设计 5183184.1获取文件格式 6100554.2获取图片文件列表 650244.3用手指移动相册里的照片 713354.4主界面的图片切换 8166355软件测试方案 10324516设计总结 11189727参考资料 11基于AndroidSDK2.2平台的手机电子相册设计方案1软件需求分析1.1Android平台背景Android平台对我们来说已经不陌生了,从08年Google推出Android系统,已经经历了2年多的发展,目前最新的版本是Android4.4。Google主持开发Android平台,其目的是推动全世界30亿手机用户,更方便、成本更低地访问互联网。Google公司宣称的目标是“组织世界上所有信息,让所有人方便地访问”。Google认为,手机价格越来越低,而其中手机平台的价格变化不大,在手机成本中所占比例越来越大。基于此,Google希望提供一个免费、开放、功能强大的手机操作系统,使用户承担的手机价格更低,同时更方便、更频繁地访问互联网。当然,Google本身也将因此而受益。因为Android的免费、开源、性能优越,故其目前稳坐手机系统平台第一把交椅,数量占智能手机终端的近80%,由此可见其普及型。安卓应用更是数不胜数,无论对于普通智能手机用户还是手机应用开发者,安卓平台都成为了首要考虑目标。故本电子相册选择Android开发平台,开发出一款免费、实用、性能优越、受市场欢迎的手机应用。1.2安卓电子相册市场需求电子相册是指可以在电脑上或者是在移动终端上观赏的区别于CD/VCD的静止图片的特殊文档,其内容不局限于摄影照片,也可以包括各种艺术创作图片。电子相册具有传统相册无法比拟的优越性:图、文、声、像并茂的表现手法,随意修改编辑的功能,快速的检索方式,永不褪色的恒久保存特性,以及廉价复制分发的优越手段。因为本安卓电子相册为软件实现,可随意修改其内容,个性设计电子相册风格,便于携带、浏览与分享,且免费,所以受广大安卓手机用户追捧。但目前安卓应用市场上并无十分成熟、广受多数用户喜爱的电子相册制作软件,多为小应用、小软件。1.3安卓电子相册功能需求相比于PC端电子相册制作软件,Android电子相册软件还有很多局限性,但其便捷灵巧,相比之下有其独特的优势。作为手机软件,电子相册制作软件要易于操作:为用户提供多种模板,使用户能够快捷的编辑手机上的图片,制作成自己独特的电子相册;软件还要能够导出制作完成的电子相册,最好是视频形式,使用户方便浏览与分享;软件应设置分享功能,使用户可以通过蓝牙或社交网络分享自己的杰作。2软件总体设计2.1电子相册功能设计本Android电子相册要实现的功能有:添加/删除图片图片预览开始/暂停/停止播放图片动态切换图片视频导出制作好的电子相册通过蓝牙、QQ、微信、微博等分享电子相册视频2.2电子相册软件流程图Android电子相册Android电子相册显示图片显示图片编辑图片保存与分享保存相册缩放图片旋转图片动态播放图片导出相册添加图片删除图片分享相册切换图片美化图片图1系统功能模块启动程序启动程序读取/sdcard/pic下的图片文件,是否空?操作图片提示用户没有图片文件退出显示/sdcard/pic下的图片文件重试或退出图2程序流程图2.3电子相册UI设计图3电子相册启动界面图4电子相册主界面图3电子相册启动界面图4电子相册主界面图5新建相册并配置(本图来自网络)图6浏览并选择图片(本图来自网络)图6浏览并选择图片(本图来自网络)图7电子相册浏览示例(本图来自网络)图7电子相册浏览示例(本图来自网络)本设计方案就是在Android平台上,基于SDK2.2开发的一款电子相册软件,包括图片预览、图片播放、动态切换、停止播放等功能。当然,由于时间的关系,本方案仅实现了电子相册的基础功能,后续还有很多工作可以完善和深入。3关键技术分析FadeIn/FadeOut特效与运行线程。虽然手机可以通过系统设置(Setting),在闲置数秒或者数分钟后会自动进入省电模式,也即关闭背光,进而达到省电的效果。这个屏幕保护程序(ScreenSaver)则是通过避免同一个静止图片或画面在LCD上久滞不动,以达到保护屏幕的效果。本节所要实现的重点如下:控制与判别User静止未触碰手机键盘或屏幕的时间及其事件设计动态全屏幕淡入(Fade-In)、淡出(Fade-Out)图片的交替效果以上这两个重点都需要通过线程(Thread)来实现,以时间戳记的方式,判断距离上一次单击手机键盘、屏幕的时间,并计量两次的时间间隔,当超过了指定的描述(默认为5秒)则自动进入保护程序。4软件详细设计编写Android电子相册并不复杂,只需要继承Activity类就可以了,当然,内部还需要实现很多细节功能,包括识别文件、获取图片文件列表、监听触摸屏事件并作出响应、动态切换图片等功能。4.1获取文件格式要显示程序,就要先确定Android平台都支持显示什么格式的图片文件,经过研究,得知Android平台可以显示至少包括Jpg,gif,png,bmp四种格式的图片文件,所以,本程序首先要获取到图片格式的文件,其他格式文件不列入显示范围。代码如下:/*取得扩展名*/ Stringend=fName .substring(fName.lastIndexOf(".")+1,fName.length()) .toLowerCase(); /*按扩展名的类型决定MimeType*/ if(end.equals("jpg")||end.equals("gif")||end.equals("png") ||end.equals("jpeg")||end.equals("bmp")){ re=true; }else{ re=false; }4.2获取图片文件列表主程序使用了ArrayList作为自定义SD卡访问图片文件列表之用,getImagelist()函数不需要传入路径,而是利用File对象与循环取得图片文件列表。privateList<String>getImagList(){ /*设定目前所在路径*/ List<String>it=newArrayList<String>(); Filef=newFile("/sdcard/pics"); if(!f.exists()){ booleanb=f.mkdir(); Log.d("mkdir","mkdir:"+b); returnit; } File[]files=f.listFiles(); /*将所有文件存入ArrayList中*/ for(inti=0;i<files.length;i++){ Filefile=files[i]; if(getImageFile(file.getPath())) it.add(file.getPath()); } returnit; }4.3用手指移动相册里的照片在本程序中,当程序一启动,将照片放在屏幕的中央。通过实现onTouchEvent来处理按下(ACTION_DOWN),拖动(ACTION_MOVE)、放开(ACTION_UP)等事件来完成拖动图片的效果。另外,设置ImageView的onclickListener让用户在单击图片的同时,回复图片的初始位置。实现本节功能的主要代码如下:publicbooleandispatchTouchEvent(MotionEventev){ if(ev.getAction()==MotionEvent.ACTION_DOWN){ downX=ev.getX(); } if(ev.getAction()==MotionEvent.ACTION_UP&&(ev.getX()-downX)>20){ pos++; showPicture(); }elseif(ev.getAction()==MotionEvent.ACTION_UP &&(downX-ev.getX())>20){ pos--; showPicture(); } returnsuper.dispatchTouchEvent(ev); }运行结果如下图所示:图8浏览已选图片(本图来自网络)主界面下方提供给用户可以拖动的滚动条,可以预览/sdcard/pics里面的所有图片文件。实际上,这个预览条是个Gallery,那么实现它的代码如下:gallery=(Gallery)findViewById(R.id.gallery); gallery.setAdapter(newImageAdapter(this));gallery.setOnItemSelectedListener(this);当用户拖动主界面后,会切换成下一幅图的展示:见下图,当然也可以点击下方的预览条来显示各幅图片。图9切换下一幅图(本图来自网络)4.4主界面的图片切换本程序提供给用户播放图片和停止播放的功能菜单,Android平台添加菜单的代码如下:publicbooleanonCreateOptionsMenu(Menumenu){ menu.add(0,MENU_SHOW,0,R.string.auto_show_picture); menu.add(0,MENU_STOP,0,R.string.stop_show_picture); returnsuper.onCreateOptionsMenu(menu); }那么,当用户点击菜单后,如果响应呢?要使用下面的函数来实现,它是Activity里面自带的函数,用户的Activity只要实现它里面的功能,就可以实现点击菜单的响应事件。 publicbooleanonOptionsItemSelected(MenuItemitem)图10菜单显示(本图来自网络)下图是点击“幻灯片播放”后的效果:开始电子相册的图片浏览,用户可以将移动终端放在喜欢的地方,当做一部很好的电子相册来展示自己心仪的图片。图11图片播放(本图来自网络)本电子相册可以每隔3秒钟切换下一幅图片,实现代码如下:privateRunnablemTasks=newRunnable(){ publicvoidrun(){ showPicture(); pos++; mHandler.postDelayed(mTasks,SHOW_INTERVAL); } };它是在程序中运行一个线程,每隔3000毫秒调用一个事件处理的对象Handler()。本文设定SHOW_INTERVAL为privateintSHOW_INTERVAL=3000;图12图片播放(本图来自网络)5软件测试方案软件开发完成后,安装电子相册.apk文件至一部安卓2.2或更高版本系统的手机上;安装后运行程序,并进行新建相册、选择图片文件夹、选择图片、编辑/删除图片文件、旋转图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论