《Android电子相册设计报告.docx》由会员分享,可在线阅读,更多相关《Android电子相册设计报告.docx(29页珍藏版)》请在第一文库网上搜索。
1、智能移动终端应用开发设计报告(2013/2014学年第2学期)题 目:电子相册软件学 院:信息与电气工程学院专 业:电子信息工程姓 名:XXXX学 号: XXXXXXX设计成绩:2014年5月15日目录1软件需求分析11.1 Android平台背景11.2 安卓电子相册市场需求11.3 安卓电子相册功能需求12软件总体设计22.1 电子相册功能设计22.2 电子相册软件流程图22.3 3电子相册UI设计33关键技术分析54软件详细设计54.1获取文件格式64. 2获取图片文件列表64.3用手指移动相册里的照片74.4主界面的图片切换85软件测试方案106设计总结117参考资料11基于Andro
2、id SDK2. 2平台的手机电子相册设计方案1软件需求分析1.1 Android平台背景Android平台对我们来说已经不陌生了,从08年Google推出Android系统,已经经历了 2年多的发展,目前最新的版本是Android 4.4。Google主持开发Android平台,其目的是推动全世界30亿手机用户,更方便、成本更低地访问互联网。Google公司宣称的目标是“组织世界上所有信息,让所有人方便地访问。Google认为,手机价格越来越低,而其中手机平台的价格变化不大,在手机成本中所占比例越来越大。基于此,Google希望提供一个免费、开放、功能强大的手机操作系统,使用户承担的手机价格
3、更低,同时更方便、更频繁地访问互联网。当然,Google本身也将因此而受益。因为Android的免费、开源、性能优越,故其目前稳坐手机系统平台第一把交椅,数量占智能手机终端的近80%,由此可见其普及型。安卓应用更是数不胜数,无论对于普通智能手机用户还是手机应用开发者,安卓平台都成为了首要考虑目标。故本电子相册选择Android开发平台,开发出一款免费、实用、性能优越、受市场欢迎的手机应用。1.2 安卓电子相册市场需求电子相册是指可以在电脑上或者是在移动终端上观赏的区别于CD/VCD的静止图片的特殊文档,其内容不局限于摄影照片,也可以包括各种艺术创作图片。电子相册具有传统相册无法比拟的优越性:图
4、、文、声、像并茂的表现手法,随意修改编辑的功能,快速的检索方式,永不褪色的恒久保存特性,以及廉价复制分发的优越手段。因为本安卓电子相册为软件实现,可随意修改其内容,个性设计电子相册风格,便于携带、浏览与分享,且免费,所以受广大安卓手机用户追捧。但目前安卓应用市场上并无十分成熟、广受多数用户喜爱的电子相册制作软件,多为小应用、小软件。1.3 安卓电子相册功能需求相比于PC端电子相册制作软件,Android电子相册软件还有很多局限性,但其便捷灵巧,相比之下有其独特的优势。作为手机软件,电子相册制作软件要易于操作:为用户提供多种模板,使用户能够快捷的编辑手机上的图片,制作成自己独特的电子相册;软件还
5、要能够导出制作完成的电子相册,最好是视频形式,使用户方便浏览与分享;软件应设置分享功能,使用户可以通过蓝牙或社交网络分享自己的杰作。2软件总体设计2.1电子相册功能设计本Android电子相册要实现的功能有:添加/删除图片图片预览开始/暂停/停止播放图片动态切换图片视频导出制作好的电子相册通过蓝牙、QQ、微信、微博等分享电子相册视频2. 2电子相册软件流程图1系统功能模块2.3电子相册UI设计考虑到使用电子相册软件的最广大用户群为青少年,故UI设计应该或活泼开放,或简洁鲜亮,或炫酷超拽,散发出青春的气息。另外要与主流的软件操作界面相似,菜单与设置项沿用Google系统应用的风格。图3电子相册启
6、动界面图4电/相册主界面图6浏览并选择图片(本图来自网络)图5新建相册并配置(本图来自网络)AlbumsWak The Line (12)Never Again (6)Birds (10)Life 图7电子相册浏览示例(本图来自网络)本设计方案就是在Android平台上,基于SDK2.2开发的一款电子相册软件,包括图片预览、图片播放、动态切换、停止播放等功能。当然,由于时间的关系,本方案仅实现了电子相册的基础功能,后续还有很多工作可以完善和深入。3关键技术分析Fadeln/FadeOut特效与运行线程。虽然手机可以通过系统设置(Setting),在闲置数秒或者数分钟后会自动进入省电模式,也即关
7、闭背光,进而达到省电的效果。这个屏幕保护程序(Screen Saver)则是通过避免同一个静止图片或画面在LCD上久滞不动,以达到保护屏幕的效果。本节所要实现的重点如下:控制与判别User静止未触碰手机键盘或屏幕的时间及其事件设计动态全屏幕淡入(Fade-In)、淡出(FadeOut)图片的交替效果以上这两个重点都需要通过线程(Thread)来实现,以时间戳记的方式,判断距离上一次单击手机键盘、屏幕的时间,并计量两次的时间间隔,当超过了指定的描述(默认为5秒)则自动进入保护程序。4软件详细设计编写Android电子相册并不复杂,只需要继承Activity类就可以了,当然,内部还需要实现很多细节
8、功能,包括识别文件、获取图片文件列表、监听触摸屏事件并作出响应、动态切换图片等功能。4.1获取文件格式要显示程序,就要先确定Android平台都支持显示什么格式的图片文件,经过研究,得知Android平台可以显示至少包括Jpg, gif, png, bmp四种格式的图片文件,所以,本程序首先要获取到图片格式的文件,其他格式文件不列入显示范围。代码如下:/*取得扩展名刃String end = fName.substring(fName.lastIndexOf(H.n) + 1, fName.length().toLowerCase();/*按扩展名的类型决定MimeType*/if (end.
9、equals(Hjpg) | end.equals(Hgif) | end.equals(npng)| end.equals(jpeg) | end.equals(bmp) re = true; else re = false;4. 2获取图片文件列表主程序使用了 ArrayList作为自定义SD卡访问图片文件列表之用,getlmagelist()函数不需要传入路径,而是利用File对象与循环取得图片文件列表。private List getImagList() /*设定目前所在路径*/List it = new ArrayList();File f 二 new File(*7sdcard/p
10、icsH);if (!f.exists() boolean b = f.mkdir();Log.rf(nmkdirn, nmkdir: ” + b);return it; File files = f.listFiles();/*将所有文件存入ArrayList中*/for (int i = 0; i 20) pos+;showPicture(); else if (ev.getAction() = MotionEvent.ACTION_UP& (downX - ev.getX() 20) pos-;showPicture();)return superedispatchTouchEvent(
11、ev);)运行结果如下图所示:图8浏览己选图片(木图来自网络)主界面下方提供给用户可以拖动的滚动条,可以预览/sdcard/pics里面的所有图片文件。实际上,这个预览条是个Gallery,那么实现它的代码如下:gallery = (Gallery) findViewById(R.id.g/3y);gallery.setAdapter(new ImageAdapter(this);gallery.setOnltemSelectedListener(this);当用户拖动主界面后,会切换成下一幅图的展示:见下图,当然也可以点击下方的预览条来显示各幅图片。图9切换下一幅图(本图来自网络)4.4 主
12、界面的图片切换本程序提供给用户播放图片和停止播放的功能菜单,Android平台添加菜单的代码如下:public boolean onCreateOptionsMenu(Menu menu) menu.add(0, MENU_SHOW, 0, R.slrng.auto_show_picture)menu.add(0, MENU_STOP, 0, R.string.stop_show_pidure)return super.onCreateOptionsMenu(menu);)那么,当用户点击菜单后,如果响应呢?要使用下面的函数来实现,它是Activity里面自带的函数,用户的Activity只要实现它里面的功能,就可以实现点击菜单的响应事件。public boolean onOptionsItemSelected(MenuTtem item)幻灯片播放停止播放图10菜单显示(本图来自网络)下图是点击“幻灯片播放”后的效果:开始电子相册的图片浏览,用户可以将移动终端放在喜欢的地方,当做一部很好的电子相册来展示自己心仪的图片。图11图片播放(本图来自网络)本电子相册可以每隔3秒钟切换下一幅图片,实现代码如下:private Runnable mTasks = new Runnable() public void run() showPicture();p